我敢肯定这个问题是重复的,但是由于返回太多答案,每个人都不适合我。
,我无法找到正确的答案。我的分支A具有1-> 2-> 3-> 4-> 5-> 6(Commit 6是最近的)。
我的分支B带有1-> 2(2是最新的)
我只想将commit 6从分支A移动到分支B。因此3、4、5应该保留在分支A中。
我想要的最终结果是
a = 1-> 2-> 3-> 4-> 5-> 6B = 1-> 2-> 6
这可能吗?抱歉,如果这是常见问题解答,请重复或不合逻辑。
我搜索了谷歌搜索,但我发现的所有答案都指出了我的结论,即6之前的每个提交也会移动...所以我没有办法在不服用3、4、5
的情况下服用6我谷歌搜索我找到了这个教程
https://ariejan.net/2010/06/10/cherry-picking-specific-commits-from-another-branch/
但是,在这里,一旦完成樱桃的挑选,两提交76CADA -62ECB3转移到主人。我只需要62ecb3
$ git checkout branch-B
$ git cherry-pick commit-6
$ git checkout branch-A
$ git reset --hard HEAD^
看起来像这个git checkout branch-B
:
A--B (branch-B) (HEAD)
C--D--E--F (branch-A)
git cherry-pick F
:
A--B--F' (branch-B) (HEAD)
C--D--E--F (branch-A)
git checkout branch-A
:
A--B--F' (branch-B)
C--D--E--F (branch-A) (HEAD)
git reset --hard HEAD^
:
A--B--F' (branch-B)
C--D--E (branch-A) (HEAD)
F (detached and will be garbage collected)