将存储库的分支合并到另一个共享历史记录部分的存储库

时间:2016-12-21 14:42:58

标签: git git-merge

我认为我在从svn迁移到git时犯了错误,现在我遇到以下情况:

我有旧的导入,我已经创建了一个分支

O1--O2--O3
          \-B1--B2

使用新提交的新导入

N1--N2--N3--N4--N5

其中N1 = 01,N2 = O2 ...... 是否可以使用此历史记录构建存储库?

N1--N2--N3--N4--N5
         \-B1--B2

1 个答案:

答案 0 :(得分:0)

我假设您有一个分支b指向提交B2,并且分支n指向同一存储库中的提交N5。 (如果他们在不同的存储库中,您可以git fetch分支,即使它们不相关,也可以将它们分配到同一个存储库中。)

然后

git checkout b
git rebase N3

N3的位置(如在您的ASCII艺术插图中)n分支上的提交将是nb的最新共同祖先历史不可重复。

Git会自动识别并消除(内容方面的)重复提交,只重写分支b独有的提交,从而产生您想要的结果