1 使用国内镜像(全局配置) [加速]
composer config -g repo.packagist composer https://packagist.phpcomposer.com
2 安装 hirak/prestissimo 插件 [加速]
发布机执行
composer global require hirak/prestissimo
卸载命令
composer global remove hirak/prestissimo
3 在ci中,在调用 composer install之前,执行 composer validate 做一致性检查
composer validate --no-check-all --strict
逐项目排查,将不通过验证的composer.json进行纠正
4 composer.lock 中不出现 files.phpcomposer.com 的 dist 包地址 [加速],逐项目进行检查,发现 files.phpcomposer.com,删除 composer.lock 后重新进行安装,确保新的composer.lock 中dist使用的都是github地址,通过diff view确保新旧lock文件一致
5 执行安装命令时,指定 --prefer-dist
6 jenkins job里配置的shell脚本,在 rsync时忽略掉 .git 目录 [加速]
参考:
你必须知道的 17 个 Composer 最佳实践
https://juejin.im/entry/5a72d506518825734501dd6d
PHP 开发者该知道的 5 个 Composer 小技巧
https://segmentfault.com/a/1190000000355928
【Composer 包分享】 hirak/prestissimo 为 Composer install/update 开启多进程下载
https://learnku.com/articles/7399/composer-packet-sharing-hirakprestissimo-open-multiple-process-downloads-for-composer-installupdate
composer --prefer-dist 和 --prefer-source 的区别
https://www.jianshu.com/p/30e475683629