如何强制composer php重新安装库?

我正在使用ZF2骨架的应用程序,它有一个.gitignore,防止外部库被委托git。 在debugging时,我喜欢在图书馆的源代码中随意更改内容,以了解工作原理。 如果这些版本被控制,那么将它们恢复到原始状态将是非常容易的。

我该如何强制Composer重新安装一个特定的框架,以便我可以再次得到一个新的未经修改的副本?

PS:请不要build议删除.gitignore文件,因为它存在的原因; 它阻止我的第三方库进入我的应用程序的存储库。 我可以随时在自动部署期间安装它们。

您可以使用--prefer-source标志作为composer来检出带有VCS信息的外部软件包(如果有的话)。 您可以简单地恢复到原来的状态。 此外,如果您发布composer update命令composer php将检测您在本地做出的任何更改,并询问是否要放弃它们。

您的.gitignore文件与您的根项目(ZF2框架)相关,它会阻止供应商目录(您的第三方库)在提交给您自己的VCS。 忽略文件与供应商的git仓库无关。

只需清除你的供应商文件夹

 rm -rf vendor/* 

我做了什么:

  1. 删除特定库的文件夹
  2. composer update --prefer-source vendor/library-name

它再次提取图书馆以及它的git回购