git在idea中的沖突解決方法(非常重要)
1、git沖突的場(chǎng)景
情景一:多個(gè)分支代碼合并到一個(gè)分支時(shí); 情景二:多個(gè)分支向同一個(gè)遠(yuǎn)端分支推送代碼時(shí);實(shí)際上,push操作即是將本地代碼merge到遠(yuǎn)端庫(kù)分支上。
關(guān)于push和pull其實(shí)就分別是用本地分支合并到遠(yuǎn)程分支 和 將遠(yuǎn)程分支合并到本地分支
所以這兩個(gè)過(guò)程中也可能存在沖突。git的合并中產(chǎn)生沖突的具體情況:<1>兩個(gè)分支中修改了同一個(gè)文件(不管什么地方)<2>兩個(gè)分支中修改了同一個(gè)文件的名稱(chēng)兩個(gè)分支中分別修改了不同文件中的部分,不會(huì)產(chǎn)生沖突,可以直接將兩部分合并。
2、沖突解決方法
情景一:在當(dāng)前分支上,直接修改沖突代碼--->add--->commit。 情景二:在本地當(dāng)前分支上,修改沖突代碼--->add--->commit--->push注:借用vim或者IDE或者直接找到?jīng)_突文件,修改。
3、實(shí)戰(zhàn)演示
(1)情景
本地庫(kù)中兩個(gè)不同分支,修改同一個(gè)文件同一代碼塊,兩分支先后將修改合并到master分支上,master在合并第二個(gè)分支代碼時(shí),報(bào)錯(cuò):合并沖突。
(2)本地庫(kù)
<1>master分支
<2>建立兩個(gè)分支
<3>兩分支修改提交
aBranch分支:
bBranch分支:
(3)合并分支產(chǎn)生沖突
合并aBranch分支(將aBranch分支合并到當(dāng)前master分支上):
注:git merge:默認(rèn)情況下,Git執(zhí)行'快進(jìn)式合并'(fast-farward merge),會(huì)直接將Master分支指向Develop分支。使用--no-ff參數(shù)后,會(huì)執(zhí)行正常合并,在Master分支上生成一個(gè)新節(jié)點(diǎn)。為了保證版本演進(jìn)的清晰,建議采用這種方法。
再合并bBranch分支,產(chǎn)生沖突:
mergeTest.txt 文件內(nèi)容:
(4)解決沖突
--->在當(dāng)前分支上(master),找到?jīng)_突文件,直接修改沖突代碼,add,commit。
注:簡(jiǎn)單方法,使用vim修改,cat查看沖突文件。(注意要?jiǎng)h除git自動(dòng)生成的沖突代碼分隔符)
(5)完成沖突解決
注:提交或者合并都會(huì)生成git節(jié)點(diǎn)。每個(gè)節(jié)點(diǎn)對(duì)應(yīng)一個(gè)代碼版本。
到此這篇關(guān)于git在idea中的沖突解決方法(非常重要)的文章就介紹到這了,更多相關(guān)idea git沖突內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. Java GZip 基于內(nèi)存實(shí)現(xiàn)壓縮和解壓的方法2. Python+unittest+requests 接口自動(dòng)化測(cè)試框架搭建教程3. 利用CSS制作3D動(dòng)畫(huà)4. 存儲(chǔ)于xml中需要的HTML轉(zhuǎn)義代碼5. SpringBoot+TestNG單元測(cè)試的實(shí)現(xiàn)6. jsp+servlet簡(jiǎn)單實(shí)現(xiàn)上傳文件功能(保存目錄改進(jìn))7. Python的文本常量與字符串模板之string庫(kù)8. .Net加密神器Eazfuscator.NET?2023.2?最新版使用教程9. 完美解決vue 中多個(gè)echarts圖表自適應(yīng)的問(wèn)題10. Springboot 全局日期格式化處理的實(shí)現(xiàn)
