Git中使用amend解決提交沖突


問題描述

      場景:當你提交的時候,發現跟要合並的流有沖突,你需要解決完沖突再次提交。 如果在SVN時代,你可以直接在本地解決完沖突再提交就可以了,因為SVN會把正確的代碼先提交到服務器,至於有沖突的代碼,你需要在本地解決完沖突再提交。

   但在Git中這樣做行不通,Git中每次提交都是完整的,也就是說,即使你這次提交有中沖突的代碼,它也一並會推送到要合並的流,每次提交會有一個change_id,當你解決完沖突提交后,這個change_id又會發生變化。這樣導致的直接后果是:由於Git是由提交的先后順序依次合並,因為第一次合並有沖突,后面所有的合並動作都會掛起。這顯然不是我們想看到的。但如果解決問題前和解決問題后的change_id不變,這樣對於Git來說,則相當於一次提交,這樣就可以解決提交沖突的問題了。

 

解決方案

       Gitamend命令支持commit時不修改change_id,命令是:git commit --amend。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM