Mr.Blog


  • 首页

  • 归档

  • 标签

  • 分类

  • 搜索

GitHub

发表于 2020-07-02 | 更新于: 2021-04-07 | 分类于 Other

GitHub 搜索技巧

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 按照项目名/仓库名搜索(大小写不敏感)
in:name xxx
# 按照README搜索(大小写不敏感)
in:readme xxx
# 按照description搜索(大小写不敏感)
in:description xxx
# stars数大于xxx
stars:>xxx
# forks数大于xxx
forks:>xxx
# 编程语言为xxx
language:xxx
# 最新更新时间晚于YYYY-MM-DD
pushed:>YYYY-MM-DD
# 例子:
in:name symfony stars:>500 forks:>100

GitHub 访问慢

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 打开 https://ipaddress.com/
# 搜索 github.global.ssl.fastly.net、github.com、avatars0. githubusercontent.com 的IP, 并添加至 hosts
#GitHub
199.232.69.194 github.global.ssl.fastly.net
140.82.114.4 github.com
185.199.108.153 assets-cdn.github.com
185.199.109.153 assets-cdn.github.com
185.199.110.153 assets-cdn.github.com
185.199.111.153 assets-cdn.github.com
199.232.68.133 avatars0.githubusercontent.com
199.232.68.133 avatars1.githubusercontent.com
199.232.68.133 avatars2.githubusercontent.com
199.232.68.133 avatars3.githubusercontent.com
199.232.68.133 avatars4.githubusercontent.com
199.232.68.133 raw.githubusercontent.com
199.232.96.133 camo.githubusercontent.com

阿里云OSS 视频截帧、媒体管理(提交截图作业)

发表于 2019-07-20 | 更新于: 2021-04-07 | 分类于 Aliyun

场景:小程序上传视频到阿里云OSS, 并将视频地址及宽高提交给服务端, 服务端通过 OSS 提供的 视频截帧 生成封面图片地址

问题:Android设备横拍的视频生成的封面图片会被拉伸, 而iOS设备则是竖拍的视频所生成的封面图片会被拉伸
解决方案一

<原视频URL>?x-oss-process=video/snapshot,t_1000,f_jpg,w_0,h_0,m_fast,ar_auto - 添加 ar 参数即可
参考文档:https://help.aliyun.com/document_detail/64555.html?spm=a2c4g.11174283.6.809.718b7da2oK1pj3

解决方案二
  1. 视频截帧时设置宽高为0, 这样图片不会变形, 但是会被旋转90度, 即Android视频封面全是竖的, iOS视频封面全是横的
  2. 使用 阿里云媒体管理 - 提交截图作业, 开通媒体管理后, 需要给 OSS Bucket 所属的用户添加权限 AliyunMTSFullAccess 管理媒体转码服务(MTS)的权限, MTS SDK, 可以通过 阿里云SDK平台 查看使用方法
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    $accessKey = 'xxxx';
    $accessSecret = 'yyyy';
    $regionId = 'cn-hangzhou';
    $ossBucket = 'test';
    $ossLocation = 'oss-cn-hangzhou';

    AlibabaCloud::accessKeyClient($accessKey, $accessSecret)
    ->regionId($regionId)
    ->asDefaultClient();

    try {
    $option = [
    'query' => [
    'Input' => json_encode([
    'Bucket' => $ossBucket,
    'Location' => $ossLocation,
    'Object' => '1.mp4',
    ]),
    'SnapshotConfig' => json_encode([
    'OutputFile' => [
    'Bucket' => $ossBucket,
    'Location' => $ossLocation,
    'Object' => '1.jpg',
    ],
    'Time' => 1,
    ])
    ]
    ];
    $result = Mts::v20140618()
    ->submitSnapshotJob($option)
    ->request();
    // 若Code已定义,则截图失败
    var_dump($result->has('SnapshotJob.Code'));
    } catch (Exception $e) {
    exit($e->getMessage());
    }

composer 配置

发表于 2021-04-07 | 分类于 Composer

配置全局镜像源

1
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

开发配置

发表于 2021-04-07 | 分类于 Other

Git 换行符

1
2
# 提交检出均不转换
git config --global core.autocrlf false

.gitattributes - 对个别文件或目录定义不同的合并策略,让 Git 知道怎样比较非文本文件,在你提交或签出前让 Git 过滤内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# 对任何文件, 文件的行尾自动转换(如果是文本文件, 则在文件入 Git 库时, 行尾自动转换为 LF; 如果已经在入 Git 库中的文件的行尾为 CRLF, 则该文件在入 Git 库时, 不再转换为 LF)
# * text=auto

# 对于 .txt 文件, 标记为文本文件, 并进行行尾规范化
# *.txt text

# 对于 .jpg 文件, 标记为非文本文件, 不进行任何的行尾转换
# *.jpg -text

# 对于 .vcproj 文件, 标记为文本文件, 在文件入 Git 库时进行规范化, 即行尾转换为 LF, 但是在检出到工作目录时, 行尾自动转换为 CRLF
# *.vcproj text eol=crlf

# 对于 .sh 文件, 标记为文本文件, 在文件入 Git 库时进行规范化, 即行尾为 LF, 但是在检出到工作目录时, 行尾也不会转换为 CRLF (即保持 LF )
# *.sh text eol=lf

# 对于 .py 文件, 只针对工作目录中的文件, 行尾为 LF
# *.py eol=lf

# GitHub 是根据项目里文件数目最多的文件类型, 识别项目类型. 后端项目难免会包含前端的资源, 有时候就会被标记成前端语言, 因为项目里 css 等文件比较多, 被误识别成 css 项目, 可以通过忽略文件的方式来达到指定语言
# 忽略目录下的文件的语言
# public/* linguist-vendored

# 在文件比较分散的情况下, 可以按文件的类型进行忽略
# *.css linguist-vendored
# *.scss linguist-vendored
# *.js linguist-vendored

# 当你的项目是作为一个扩展发布在 packagist.org 上的时候, 使用者需要的可能只是你的 src 文件夹和 composer.json 文件, 而不需要其他的一些文件, 它的作用就是会忽略这些文件
# 当使用 composer 安装你的软件包(扩展包)的时候, --prefer-dist 会从 github 或 cvs 下载一个 zip 包, 并将其解压缩. 使用 .gitattributes 文件, 可以通过添加 export-ignore 属性来忽略不需要下载的文件.
# 在使用 composer 安装扩展的时候, .travis.yml 文件是不会下载下来的.
# 适用于 Github 和 Bitbucket
# .travis.yml export-ignore

* text=auto
*.css linguist-vendored
*.scss linguist-vendored
*.js linguist-vendored
CHANGELOG.md export-ignore

.gitkeep - 如果一个目录为空, 是无法纳入到 git 版本控制中的, 所以创建了一个随意命名(最好还是按业界通用做法命名为 .gitkeep) 的隐藏文件来保证目录不为空

阅读全文 »

Git 配置

发表于 2018-10-08 | 更新于: 2021-04-07 | 分类于 Git

Git 忽略已跟踪文件的改动

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 忽略 .htaccess 文件的改动
git update-index --assume-unchanged .htaccess

# 取消忽略
git update-index --no-assume-unchanged .htaccess

# 查看本地仓库忽略的文件列表
git ls-files -v

# 找出被忽略的文件
git ls-files -v | grep '^h\ '

# 提取忽略文件路径
git ls-files -v | grep '^h\ ' | awk '{print $2}'

# 所有被忽略的文件取消忽略
git ls-files -v | grep '^h' | awk '{print $2}' |xargs git update-index --no-assume-unchanged

区分大小写

1
2
3
4
5
git config core.ignorecase false
# 查看全局配置
git config --global --list
# 全局配置区分大小写
git config --global core.ignorecase false

换行符配置

1
2
3
4
5
6
7
8
9
10
11
12
13
# 提交时转换为 LF, 检出时转换为 CRLF (推荐windows)
git config --global core.autocrlf true
# 提交时转换为LF, 检出时不转换(推荐*unix/mac)
git config --global core.autocrlf input
# 提交检出均不转换
git config --global core.autocrlf false

# 拒绝提交包含混合换行符的文件
git config --global core.safecrlf true
# 允许提交包含混合换行符的文件
git config --global core.safecrlf false
# 提交包含混合换行符的文件时给出警告
git config --global core.safecrlf warn

PHP 项目中常用算法

发表于 2020-07-02 | 更新于: 2020-10-12 | 分类于 PHP

蓄水池算法

代码实现
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$k = 3;
$n = 10;
$pool = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
$result = [];
for ($i = 0; $i < $k; $i++) {
// 前 k 个元素直接放入数组中
$result[$i] = $pool[$i];
}

for ($i = $k; $i < $n; $i++) {
$r = mt_rand(0, $i);
// 随机整数落在[0, k - 1]范围内,则替换蓄水池中的元素
if ($r < $k) {
$result[$r] = $pool[$i];
}
}
阅读全文 »

Docker 搭建 LAMP

发表于 2020-07-06 | 分类于 Docker

参考 Docker 搭建 LNMP + Redis

  1. 新建 php-apache 目录

    1
    mkdir php-apache
  2. 复制配置文件

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    # 1.进入宿主机 php-apache 目录
    cd /data/php-apache

    # 2.拉取 php:7.2-apache
    docker pull php:7.2-apache

    # 3.拉取 php-extension-installer
    docker pull mlocati/php-extension-installer

    # 4. 复制 php.ini-development
    docker run --rm php:7.2-apache cat /usr/local/etc/php/php.ini-development > php.ini

    # 5.复制 000-default.conf 至 conf.d 目录
    docker run --rm php:7.2-apache cat /etc/apache2/sites-enabled/000-default.conf > ./conf.d/default.conf
阅读全文 »
1…345…15
Mr

Mr

懒........

102 日志
21 分类
56 标签
RSS
Links
  • Novnan
  • 挨踢Blog
  • Eagle
  • Timber
  • 谢炳南
© 2020 — 2021 Mr
0%