我有多个基于相似代码库的不同闭源项目,每天我都需要将更改和修复从一个复制到另一个,然后再复制回来。
由于我的一些项目过于分散,无法使用git子模块,而在其他项目中,我不希望我的客户扰乱子模块,因此窥探我在其他项目上的工作,现在我用git patch
和git apply
这样做,这是一项繁琐的工作。
我正在考虑在我的机器上的本地存储库之间切换到git pull
和git push
,从而使用git cherry-pick
和git merge
来获取所需的更改,但是如果有更好的方法?
以下更像是建议
子树合并
合并存储库
我对这个也很感兴趣,如果我得到任何明确的答案,我会更新的。
使用git cherry-pick
可以做你想做的。通过将另一个存储库作为可以从中获取的远程存储库,您仍然可以选择性地选择单个提交。您也不需要创建远程的分支,只需获取更改并挑选想要移植的提交的sha1即可。当你push时,它不应该push其他获取的引用,因为它们不在你当前的分支上,只有精心挑选的提交。