2011-12-21 65 views
0

我正在致力於master分支。在我的情況恢復更改

我已經在我的項目做了很多更改,然後提交 & 所有更改到遠程倉庫由:

git push origin master 

於是,我做了一個新的分支,並推動最新的代碼新分支(使其成爲遠程分支)如下:

git branch new-branch 
git checkout new-branch 
git push origin new-branch 

我現在在new-branch。現在,master & new-branch具有相同的最新代碼本地 & 遠程

我的問題是:

我怎樣才能回覆變化回主分支在本地和遠程。 但只保留所有更改new-branch

回答

1

轉到主分支並執行git revert HEADgit push origin master。 這將創建一個新的提交,以反轉您想要撤消的提交。

你也可以做一個git reset --hard HEAD^(在主分支)和git push -f origin master-f強制推送),但如果有人拉你推的最新變化會引起他們的問題。

new-branch的更改不應受這些操作的影響。

0

既然你推它,理想的方式是git revert提交在主機和推主:

git checkout master 
git revert HEAD 
git push origin master 

以上將創建一個新的提交是該還原(撤消變化)的前面的

0

這假定你已經在你的新分支上。

git push . +master^:master 
git push origin +master 

這將允許你不打擾甚至檢查出主,以便在本地和遠程回滾。

如果有人已經在主人身邊工作,請小心。如果他們想要推動他們的變化,他們必須在其他承諾的基礎上改變他們的變更。

相關問題