我有一个私人包,我在供应商中导入。
现在,我正在处理我的项目,并希望编辑供应商包中的一些代码。
现在我已经完成了并且想要提交代码,所以我去了那个包的目录并说:“git commit -a
”所以我给出一条消息,保存,现在我有一个提交。 Oke,“git push
”并给出回答“一切都是最新的”......所以我不能推动它,但我可以提交?
这不是一种提交方式吗?我应该克隆回购并在那里工作吗?
答案 0 :(得分:1)
您永远不应该直接编辑供应商代码 - 这是依赖关系管理的全部要点。
Composer基本上通过查看您的composer.json
文件,并获取您指定的存储库和版本来工作。如果您需要对其中一个依赖项进行更改,则应在原始存储库中进行更改,将更改推送到GitHub(或托管代码的任何位置)并运行composer update
。
答案 1 :(得分:0)
当Composer安装供应商时,它会检出特定的提交,因此您不在分支机构上。您需要签出master
分支 - 或者您正在使用的分支 - 然后提交并推送它。
答案 2 :(得分:0)
很久以前,我问过这个问题。意思是我得到了答案,但从未更新过我的stackoverflow问题,对不起!
关于我自己的问题的答案是获得与作曲家--prefer-source
的依赖关系。
https://getcomposer.org/doc/03-cli.md#install
- prefer-source:有两种方法可以下载软件包:
source
和dist
。对于稳定版本,作曲家默认使用dist
。source
是版本控制存储库。如果启用了--prefer-source
,则编译器将从source
安装(如果有)。如果您想对项目进行错误修复并直接获取依赖项的本地git克隆,这非常有用。