变基到没有共同祖先的分支
Rebase onto branch without common ancestor
我有一棵树,如下所示:
A--B (master)
C (newbase)
它包含两个没有共同祖先的分支。提交 C
实际上是 A 的基线,一个从旧控制版本系统导入它的人只是忘了导入它。
我想对分支进行变基,使其看起来如下所示:
C--A--B
我试过了
git checkout master
git rebase --onto newbase A -s recursive -Xtheirs
但结果是
C--B
我想你可以只使用 rebase 然后删除 newbase
分支:
git checkout master
git rebase newbase
您需要使用 git rebase --root
(加上您喜欢的任何其他选项,在本例中是您的 --onto
和策略选项)。
(我只用交互式变基测试过这个,但它被记录为适用于所有形式的变基。)
我有一棵树,如下所示:
A--B (master)
C (newbase)
它包含两个没有共同祖先的分支。提交 C
实际上是 A 的基线,一个从旧控制版本系统导入它的人只是忘了导入它。
我想对分支进行变基,使其看起来如下所示:
C--A--B
我试过了
git checkout master
git rebase --onto newbase A -s recursive -Xtheirs
但结果是
C--B
我想你可以只使用 rebase 然后删除 newbase
分支:
git checkout master
git rebase newbase
您需要使用 git rebase --root
(加上您喜欢的任何其他选项,在本例中是您的 --onto
和策略选项)。
(我只用交互式变基测试过这个,但它被记录为适用于所有形式的变基。)