比方说,有多个人正在同一个项目中进行工作,其中供应商文件由composer维护。人员 A 运行:
composer update
命令可将依赖关系更新为最新版本,并将更改存储到composer.lock
文件中。
A 现在推送composer.lock
文件,个人 B 从存储库中提取文件。
现在 B 具有更新的composer.lock
文件,但供应商文件已过时。
B 应该怎么做才能将供应商文件更新为存储在新composer.lock
文件中的版本?
composer install
会检查供应商文件的版本并将它们与composer.lock
中存储的版本进行比较并更新过时的文件吗?
还是需要在运行composer install
之前手动删除所有供应商文件?
答案 0 :(得分:1)
在具有现有composer install
目录的应用程序上运行vendor
会导致软件包被更新(已安装,更新和删除了软件包),因此vendor
目录与锁定文件上声明的内容匹配
个人而言,如果我正在运行install
,则无论如何我都会删除vendor
的内容。
但这只是为了确保我没有丢失任何东西,也没有出现意外的伪像,例如自动加载器文件或类似的东西。