只将最后 n 个提交移动到其他分支

时间:2021-03-27 14:50:20

标签: git git-branch branching-and-merging

我的结构目前是这样的:

master   A-B-C-D-E-F
                \
                 \
branch2           D2 - D3 - D4

我想将最后两个提交(D3D4)从 branch2 移到 master 而不移动 D2。所以它应该是这样的:

master   A-B-C-D-E-F-D3-D4
                \
                 \
branch2           D2

如何实现?

请考虑主分支已经存在 - 我已经看到几个答案合并到新分支,但这在这里无效。

1 个答案:

答案 0 :(得分:2)

为了扩展 Janez Kuhar 的评论,你要做的是

id_record

其中 git checkout master git cherry-pick D3 git cherry-pick D4 D3 是提交的 shas。

由于我们不希望有重复的提交并且您表示要从 branch2 中删除这些提交,因此我们这样做:

D4

再次,其中 git revert D3^..D4 D3 是提交的 shas。

相关问题