2012-07-31 71 views

回答

1

修改發佈的歷史通常是一個壞主意。通過發佈的歷史記錄,我們指的是已經推向上游的提交。

不過,如果你必須這樣做,我找到最好的方法來刪除上游分支,然後重新推出你的本地分支。

git push origin :<branch-name> 
git push -u origin <branch-name> 

(改變原產地,如果你的遙控器被命名爲其它)

這樣做之後,你必須小心傳達給同胞collaboraters。他們會想取下來的最新變化

git fetch origin 
git reset <branch-name> origin/<branch-name> 

注後他們的地方分支機構復位到遠程分支:上述會讓他們失去他們並沒有推升流或合併到其他分支任何承諾。

2

如果你已經推承諾,不要--amend,除非你確信沒有其他人已經從它已經退出。如果你知道這一點,你需要做git push -f以公佈變更。

真的,如果你已經推動了它,不要做非快進修改(rebase,--amend)。這將導致問題在路上。