将分支移动到另一个分支

时间:2014-01-30 14:29:44

标签: git git-branch branching-and-merging

我已经开始在一个分支上做一些工作了,我认为这个分支是错误的。有没有办法将分支移动到不同的分支。

例如:

A -- B -- C -- D -- HEAD
 \-- E -- F -- G -- H -- I -- J
      \-- K -- L

我想要这个:

A -- B -- C -- D -- HEAD
 \    \-- K -- L
  \
   \-- E -- F -- G -- H -- I -- J

3 个答案:

答案 0 :(得分:26)

假设您已将您的分支命名为:

    A -- B -- C -- D (master)
     \-- E -- G -- H -- I -- J (current-parent)
          \-- K -- L (my-branch)

你想要做的是将my-branch重命名为B提交,如下所示:

    git rebase current-parent my-branch --onto B

答案 1 :(得分:5)

您可以使用git rebase --onto,例如,

git rebase --onto new-base old-base your-branch

所以在你的情况下,像:

git rebase --onto B E L

应该有用。

答案 2 :(得分:2)

这只是git rebase可以做的事情。

https://www.kernel.org/pub/software/scm/git/docs/git-rebase.html