更改git分支的来源

时间:2015-09-29 07:49:05

标签: git git-remote

我用这种方式创建了分支:

git branch MyBranch origin/test

test是与主人平行的分支。现在测试合并为主

如何更改MyBranch的来源,使其指向主

1 个答案:

答案 0 :(得分:3)

没有"起源"一个分支。 A"分支"只是一个指向特定提交的标签。

如果您未对MyBranch进行过提交,则可以删除并重新创建。

git branch -d MyBranch
git branch MyBranch master

如果你已经完成MyBranch的工作,那么事情就会复杂一些。你的情况是这样的......

- A - B - C - D [master]
       \
        E - F [origin/test]
             \
              G - H [MyBranch]

MyBranch已在origin/test之上提交G和H.如果您想在MyBranch之上移动master,那么您需要保留G和H中的工作。这可以使用rebase来完成。

git rebase --onto master origin/test MyBranch

这表示采取MyBranch但不在origin/test(G和H)中的更改并将其置于master之上。你得到......

                G1 - H1 [MyBranch]
               /
- A - B - C - D [master]
       \
        E - F [origin/test]
             \
              G - H