2015-09-29 37 views
2

的由來:更改我創建分支這樣的Git分支

git branch MyBranch origin/test 

test是分支平行於主。現在測試合併到主

我怎樣才能改變MyBranch起源,使其指向掌握

+0

你想簡單地改變遠程跟蹤分支,或者你想'git rebase'? –

+2

可能的重複[如何更改遠程git分支正在跟蹤?](http://stackoverflow.com/questions/4878249/how-do-i-change-the-remote-a-git-branch-is眼睛跟蹤) – rubenvb

回答

3

沒有分支的「原點」。 「分支」只是一個指向特定提交的標籤。

如果您沒有提交MyBranch提交,那麼您可以刪除並重新創建它。

git branch -d MyBranch 
git branch MyBranch master 

如果您在MyBranch上完成了一些工作,那麼情況會稍微複雜一些。你的情況是這樣的......

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

MyBranch有犯G和H上的origin/test頂部。如果你想在master之上移動MyBranch,那麼你需要保留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