git在idea中的沖突解決方法(非常重要)
1、git沖突的場景
情景一:多個分支代碼合并到一個分支時; 情景二:多個分支向同一個遠(yuǎn)端分支推送代碼時;實(shí)際上,push操作即是將本地代碼merge到遠(yuǎn)端庫分支上。
關(guān)于push和pull其實(shí)就分別是用本地分支合并到遠(yuǎn)程分支 和 將遠(yuǎn)程分支合并到本地分支
所以這兩個過程中也可能存在沖突。git的合并中產(chǎn)生沖突的具體情況:<1>兩個分支中修改了同一個文件(不管什么地方)<2>兩個分支中修改了同一個文件的名稱兩個分支中分別修改了不同文件中的部分,不會產(chǎn)生沖突,可以直接將兩部分合并。
2、沖突解決方法
情景一:在當(dāng)前分支上,直接修改沖突代碼--->add--->commit。 情景二:在本地當(dāng)前分支上,修改沖突代碼--->add--->commit--->push注:借用vim或者IDE或者直接找到?jīng)_突文件,修改。
3、實(shí)戰(zhàn)演示
(1)情景
本地庫中兩個不同分支,修改同一個文件同一代碼塊,兩分支先后將修改合并到master分支上,master在合并第二個分支代碼時,報(bào)錯:合并沖突。
(2)本地庫
<1>master分支
<2>建立兩個分支
<3>兩分支修改提交
aBranch分支:
bBranch分支:
(3)合并分支產(chǎn)生沖突
合并aBranch分支(將aBranch分支合并到當(dāng)前master分支上):
注:git merge:默認(rèn)情況下,Git執(zhí)行'快進(jìn)式合并'(fast-farward merge),會直接將Master分支指向Develop分支。使用--no-ff參數(shù)后,會執(zhí)行正常合并,在Master分支上生成一個新節(jié)點(diǎn)。為了保證版本演進(jìn)的清晰,建議采用這種方法。
再合并bBranch分支,產(chǎn)生沖突:
mergeTest.txt 文件內(nèi)容:
(4)解決沖突
--->在當(dāng)前分支上(master),找到?jīng)_突文件,直接修改沖突代碼,add,commit。
注:簡單方法,使用vim修改,cat查看沖突文件。(注意要刪除git自動生成的沖突代碼分隔符)
(5)完成沖突解決
注:提交或者合并都會生成git節(jié)點(diǎn)。每個節(jié)點(diǎn)對應(yīng)一個代碼版本。
到此這篇關(guān)于git在idea中的沖突解決方法(非常重要)的文章就介紹到這了,更多相關(guān)idea git沖突內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. ASP.NET MVC遍歷驗(yàn)證ModelState的錯誤信息2. 使用EF Code First搭建簡易ASP.NET MVC網(wǎng)站并允許數(shù)據(jù)庫遷移3. javascript xml xsl取值及數(shù)據(jù)修改第1/2頁4. 淺談SpringMVC jsp前臺獲取參數(shù)的方式 EL表達(dá)式5. HTML5 Canvas繪制圖形從入門到精通6. XML入門的常見問題(四)7. jsp+servlet簡單實(shí)現(xiàn)上傳文件功能(保存目錄改進(jìn))8. JavaWeb Servlet中url-pattern的使用9. XML入門的常見問題(一)10. asp批量添加修改刪除操作示例代碼
