我正在使用https://github.com/tonix-tuft/grunt-hub-automator(我在GitHub上创建的一个回购协议),它使我可以设置一个守护程序,该守护程序在每次更改composer.json
或composer.lock
文件时都会运行以下命令:< / p>
composer self-update && composer install --no-dev && composer update --lock
这样,我可以跨不同的分支移动,并且守护程序将vendor
中的依赖项与composer.json
保持同步。
但是,如果在 new_branch 上添加了新的依赖项后,我签出了未在composer.json
中定义这些依赖项的 old_branch ,因为我仅在 new_branch ,该守护程序会触发命令并删除旧分支上的依赖项,以使所有内容保持同步。
这种方法的问题在于,如果那时我在composer
命令在 old_branch 上完成其工作之前再次 new_branch 后台程序的支持),我最终得到一个未同步的vendor
文件夹,因为Composer认为我仍然在old_branch
上,因此正在删除依赖项。
在vendor
中未定义它们时,有没有办法告诉Composer不要从composer.json
中删除已经安装的依赖关系?
基本上,我希望Composer每次composer.json
更改而不删除最终依赖项时,安装丢失的依赖项或更新composer.json
中定义的依赖项。但现在composer.json
中不再定义。
有可能吗?
我希望我很清楚。
感谢您的关注。