如何移动git branch up tree(反向rebase)

时间:2013-06-12 10:40:36

标签: git branch git-rebase

假设我有一系列提交,如下所示:

h {master}
^
f g {branch1}
^ ^
d e
^/
c
^
b
^
a

我知道我可以通过rebase将branch1移动到树的末尾,所以它看起来像这样:d->f->h->e->g

但是,有什么方法可以将树枝移到树上,所以它看起来像这样吗?

h {master}
^
f
^
d g {branch1}
^ ^
c e
^/
b
^
a

2 个答案:

答案 0 :(得分:2)

实际上,它是从branch1 中删除c而不是rebase的通常含义。您可以使用rebase

的交互模式执行此操作
git rebase -i b<SHA1>

删除pick c<SHA1>行并完成。

答案 1 :(得分:2)

branch1上时,请运行git rebase --onto b c branch1。这应该可以胜任。