通过缓存Composer依赖可显著提升GitHub Actions构建速度。首先使用actions/cache缓存~/.composer/cache和vendor/目录,结合composer.lock的hash值生成缓存key,确保依赖一致性;在工作流中先加载全局包缓存,再执行composer install --prefer-dist,并单独缓存vendor目录供后续阶段复用;建议始终提交composer.lock、避免跨PHP版本共享vendor缓存,多Job场景可结合upload-cache与download-cache实现高效协作,使依赖安装从数十秒缩短至几秒。

在GitHub Actions中高效运行Composer,关键在于利用缓存机制避免每次工作流都重新下载PHP依赖。通过缓存vendor目录和Composer本地包缓存,可以显著缩短构建时间。以下是如何配置一个高效的GitHub Actions工作流来实现这一点。
GitHub官方提供了 actions/cache 动作,可用于缓存Composer的依赖目录。主要缓存两个路径:
~/.composer/cache:Composer下载的压缩包缓存vendor/:项目依赖安装目录缓存命中时,composer install 将直接使用已有依赖,无需重新下载,大幅提升速度。
在项目根目录创建或修改 .github/workflows/ci.yml 文件:
说明:
setup-php 动作自带PHP环境和Composer,并支持内置缓存(可选)hashFiles('**/composer.lock') 确保lock文件变更时缓存失效composer install
vendor 目录,适用于后续作业复用(如部署阶段)为获得最佳效果,请注意以下几点:
composer.lock 文件,确保依赖版本一致--prefer-dist 优先从dist下载稳定包,加快安装~/.composer/cache,让CI每次干净安装但快速获取包vendor 跨不同PHP版本或架构,可能导致兼容问题upload-cache 和 download-cache
基本上就这些。合理使用缓存能让GitHub Actions中的Composer安装从几十秒降至几秒,提升开发效率。不复杂但容易忽略细节。
以上就是如何在GitHub Actions中高效运行Composer_配置GitHub Actions工作流以缓存Composer依赖的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号