2012-05-08 17 views
1

我有一個新的工作線路,我想成爲主人。它已經與主人分道揚to以合併或重組(儘管我已經手動移植了這個功能)。我意識到我可以輕鬆地做一個git branch -D master; git checkout new-master; git checkout -b master,但我不想搞砸任何叉子。在git中創建一個新的分支而不用搞亂現有的分支

理想情況下,我想介紹一個提交,將當前的主服務器轉變爲可以從我的新分支應用我的更改的狀態,以便任何擁有分支的人都可以僅使用git pull origin master,並且不會發生事件。

這可能嗎?

回答

1

如果你只是想分支master指一個新的提交,其內容是相同的分支branch,與master^master是「改變一切,以滿足分支branch的內容」之間的增量,這是很容易:

$ git checkout branch 
$ git symbolic-ref HEAD refs/heads/master 
$ git status # you'll see what you're about to commit, here 
$ git commit # make that new commit 

注意,對於master分支歷史將branch這裏。

如果你想提交的樣子改變一切的方式branch外觀合併,這似乎這樣的伎倆,但我沒有測試得好:

$ git checkout master 
$ git merge --no-commit -s ours branch # this sets up the merge 
$ git rm -r .       # this empties it out 
$ git checkout branch -- .    # this adds everything from branch 
$ git status # again, just to see what you're about to commit 
$ git commit # and maybe edit the message to note that you took "branch" 

現在master^是什麼高手用來看起來像和master^2branch的小費。

相關問題