vendor 目录不应提交到 Git,因其是可通过 composer.json 和 composer.lock 重建的构建产物,体积大、更新频繁、含平台相关文件,提交会导致历史臃肿、拉取变慢、Diff 失真及协作冲突。

不应该提交 vendor 目录到 Git。
Composer 的 vendor 目录是依赖包的安装结果,本质属于“构建产物”,不是源代码。它体积大、更新频繁、包含平台相关文件(如扩展的二进制文件),且内容完全可通过 composer.json 和 composer.lock 重建。
composer.lock 锁定了所有依赖的确切版本和哈希值,保证不同环境安装一致vendor 会导致 Git 历史臃肿,拉取/克隆变慢,Diff 失去可读性vendor 差异引发无意义冲突Git 仓库中应保留:
composer.json:定义项目依赖和脚本composer.lock:必须提交,它是可重现安装的核心依据同时确保 .gitignore 中已包含 /vendor/(Composer 安装时会自动生成标准规则)。
在服务器或 CI 流水线中,只需运行:
composer install --no-dev即可根据 composer.lock 精确还原依赖。生产环境跳过 --no-dev 可能引入非必要包,建议明确指定。
若需离线部署,可用 composer install --no-install 预生成 vendor 并打包,但这属于特殊场景,不改变主干策略。
以上就是Composer的vendor目录应该提交到Git吗?(版本控制策略)的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号