背景:今天在特性分支合并master代碼的時候故响,執(zhí)行了git merge master操作,代碼有沖突颁独,所有merge過來的代碼出現(xiàn)在version control里彩届,解決沖突后,準備提交代碼誓酒,代碼分析出現(xiàn)很多警告樟蠕,又有別的事情,就在version control點了revert靠柑,想把合過來的代碼都丟棄寨辩。當我再次修改代碼提交代碼時,合過來的代碼都顯示提交了成了回退后的樣子歼冰,并且再次merge master時靡狞,顯示已經(jīng)merge過了,不再讓merge了隔嫡。
解決辦法:git reset 這里不再贅述用法甸怕,參考:http://www.reibang.com/p/c2ec5f06cf1a
首先,可以在idea直接操作腮恩,點擊想回退的分支梢杭,右擊選擇 reset current branch to here…,出現(xiàn)彈框直接選擇hard秸滴,點擊reset武契。
此時,本地工作空間已經(jīng)直接回退到了該版本,再執(zhí)行git push origin xxx即可吝羞,則遠程的也回退到了該分支兰伤。
如果跟遠程的該分支有沖突,遠程分支版本比本地分支版本高钧排,不讓push時敦腔,執(zhí)行git push origin xxxx -f,強制提交恨溜,將本地同步到遠程符衔。
現(xiàn)在可以重新進行 merge master了,代碼也回到之前的版本了糟袁。