我有一棵树,如下所示:
A--B (master)
C (newbase)
它包含两个没有共同祖先的分支。提交C
实际上是A的基准,一个从旧控制版系统导入它的人只是忘记导入它。
我想重新分支分支,所以它看起来如下:
C--A--B
我试过
git checkout master
git rebase --onto newbase A -s recursive -Xtheirs
但结果是
C--B
答案 0 :(得分:1)
我猜你可以使用rebase然后删除newbase
分支:
git checkout master
git rebase newbase
答案 1 :(得分:1)
您需要使用git rebase --root
(以及您喜欢的任何其他选项,在这种情况下为--onto
和策略选项)。
(我只使用交互式rebase进行了测试,但记录为使用了所有形式的rebase。)