使用 composer install 可确保不修改 composer.lock 文件,该命令按 lock 文件锁定的版本安装依赖,避免意外更新,适用于团队协作与生产部署。

当你使用 Composer 安装项目依赖时,如果希望确保 composer.lock 文件不被修改,仅根据已有 lock 文件安装依赖,应使用 composer install 命令。这个操作不会检查包的新版本,也不会更新 lock 文件。
composer install 的作用
composer install 会读取当前目录下的 composer.lock 文件(如果存在),并严格按照其中记录的版本安装依赖。这保证了所有开发者和部署环境使用完全相同的依赖版本。
- 如果存在 composer.lock,直接按其内容安装
- 如果不存在,则生成新的 lock 文件
- 不会尝试升级或解析新版本
避免意外更新 lock 文件的方法
为了确保 lock 文件不变,不要运行 composer update,因为该命令会重新解析 composer.json 中的版本约束,并更新 composer.lock。
- 只运行 composer install 部署或初始化项目
- CI/CD 环境中推荐使用
composer install --no-dev生产安装 - 可以加
--no-scripts或--prefer-dist根据需要优化流程
常见使用场景
在团队协作或生产部署中,通常要求依赖一致:
- 新成员克隆项目后执行
composer install,得到和其他人一样的依赖树 - 上线部署脚本使用
composer install确保不引入未经测试的更新 - 提交 composer.lock 到版本控制,是实现可重复构建的关键
基本上就这些。只要坚持用 install 而不是 update,就能保证 lock 文件不被更改。