我的存储库中有两个分支(出于此问题的目的):master
和performance_testing
。我已收到该master
分支机构的更改。我也需要把它们放进去performance_testing
。我需要保持两个分支的存在和分离,因此合并是不合适的。我想我可以在一个分支中引入更改并提交,然后在另一分支中执行相同的操作。但这似乎容易出错,我认为git可以通过某种方式更直接地做到这一点。我该怎么做呢?
在这种情况下,您通常会选择“樱桃采摘”,即只将一个分支的提交的子集应用于另一个分支。
例如,你有提交A
,B
,C
,D
,E
,F
在master
和你想拿提交B
,C
并D
为performance_testing
:
git checkout performance_testing
git cherry-pick B^..D
或者,您可以在多个单独的Cherry-pick命令中列出单个提交。当您不必连续进行一系列提交时,这很有用。例如:
git cherry-pick B D
请注意,历史记录中B在D之前。
有关更多详细信息,请参见:如何挑选多个提交(其中还包括一些我不会深入研究此答案的出色图表)。
是的,有许多不同的选项可供选择。这是一个基本且通用的解决方案,读者了解了它的工作原理后就可以选择应用。git rebase --onto
与其他分支机构管理一样,这是另一种选择,但是如果没有非常具体的考虑,挑选樱桃应该会获得最大的收益。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句