从功能分支的某些提交开始进行Git合并

时间:2019-08-16 03:38:27

标签: git github

如果我有以下git分支

master: A - B - C - DE
         \
topic:    \- D - E - F - G

有什么方法可以将提交F和G合并到主文件?

我要这样做的原因是,在我将commit Fcommit G合并为D和{{1} }至E之后。我做了壁球并合并,所以现在C包含DED的合并。现在,我只需要合并EF即可掌握。

1 个答案:

答案 0 :(得分:0)

您可以这样做:

git rebase --onto master E topic

您要让git在主舍弃修订版本的基础上重新建立主题分支,直到E(因此,基本上要求仅保留F和G)。

结果:

master: A - B - C - DE
                     \
topic:                F' - G'

那你就可以合并成主人了

git checkout master
git merge topic

或者让分支移动:

git branch -f master topic

或者,您也可以选择精通大师:

git checkout master
git cherry-pick topic~2..topic # bring over the last 2 revisions from topic into master