仅将最后 n 次提交移动到其他分支
Only move last n commits to other branch
我的结构目前是这样的:
master A-B-C-D-E-F
\
\
branch2 D2 - D3 - D4
而且我想将最后两个提交(D3
和 D4
)从 branch2
移动到 master 而不移动 D2
。所以它应该是这样的:
master A-B-C-D-E-F-D3-D4
\
\
branch2 D2
如何实现?
请考虑主分支已经存在 - 我已经看到几个答案合并到新分支,但这在这里无效。
要扩展 Janez Kuhar 的评论,您需要做的是
git checkout master
git cherry-pick D3
git cherry-pick D4
其中 D3
和 D4
是提交的 shas。
由于我们不希望有重复的提交,并且您表示要从 branch2 中删除这些提交,因此我们会这样做:
git revert D3^..D4
同样,D3
和 D4
是提交的 shas。
我的结构目前是这样的:
master A-B-C-D-E-F
\
\
branch2 D2 - D3 - D4
而且我想将最后两个提交(D3
和 D4
)从 branch2
移动到 master 而不移动 D2
。所以它应该是这样的:
master A-B-C-D-E-F-D3-D4
\
\
branch2 D2
如何实现?
请考虑主分支已经存在 - 我已经看到几个答案合并到新分支,但这在这里无效。
要扩展 Janez Kuhar 的评论,您需要做的是
git checkout master
git cherry-pick D3
git cherry-pick D4
其中 D3
和 D4
是提交的 shas。
由于我们不希望有重复的提交,并且您表示要从 branch2 中删除这些提交,因此我们会这样做:
git revert D3^..D4
同样,D3
和 D4
是提交的 shas。