詳解git合并沖突解決方法
1、git merge沖突了,根據(jù)提示找到?jīng)_突的文件,解決沖突
如果文件有沖突,那么會(huì)有類(lèi)似的標(biāo)記
2、修改完之后,執(zhí)行g(shù)it add 沖突文件名
3、git commit
注意:沒(méi)有-m選項(xiàng)
進(jìn)去類(lèi)似于vim的操作界面,把conflict相關(guān)的行刪除掉
4、直接push就可以了,因?yàn)閯倓傄呀?jīng)執(zhí)行過(guò)相關(guān)merge操作了
相關(guān)的操作如下
沖突產(chǎn)生
[root@Monitor Demo]# git branch #當(dāng)前在master分支下 * master psr/psr-01 psr/psr-02 [root@Monitor Demo]# git checkout psr/psr-02 #切換到psr/psr-02分支下 Switched to branch 'psr/psr-02' [root@Monitor Demo]# git branch master psr/psr-01 * psr/psr-02 [root@Monitor Demo]# ls LICENSE new_remote_branch.txt psr_psr-02.txt README.md [root@Monitor Demo]# vim psr_psr-02.txt #修改psr/psr-02分支上的文件 [root@Monitor Demo]# git add psr_psr-02.txt [root@Monitor Demo]# git commit -m 'psr_psr-02.txt has changed on psr/psr-02 branch' #提交到暫存區(qū) [psr/psr-02 62ca72c] psr_psr-02.txt has changed on psr/psr-02 branch 1 files changed, 6 insertions(+), 0 deletions(-) [root@Monitor Demo]# git checkout master #切換到master分支下 Switched to branch 'master' [root@Monitor Demo]# vim psr_psr-02.txt #在master分支下也對(duì)psr_psr-02.txt進(jìn)行修改 [root@Monitor Demo]# git add psr_psr-02.txt [root@Monitor Demo]# git commit -m 'changed this file on master branch' [master 282fbeb] changed this file on master branch 1 files changed, 2 insertions(+), 0 deletions(-) [root@Monitor Demo]# git merge psr/psr-02 #把psr/psr-02分支合并到當(dāng)前分支,這時(shí)提示沖突了 Auto-merging psr_psr-02.txt CONFLICT (content): Merge conflict in psr_psr-02.txt Automatic merge failed; fix conflicts and then commit the result.
沖突解決過(guò)程
沖突文件的格式基本如下
<<<<<<<到=======是在當(dāng)前分支合并之前的文件內(nèi)容
=======到>>>>>>> psr/psr-02是在其它分支下修改的內(nèi)容
需要在這個(gè)兩個(gè)版本中選擇一個(gè),然后把標(biāo)記符號(hào)也要一起刪除
<<<<<<< HEAD
add some lines on master branch add some lines on psr/psr-01 branch 2016年12月13日14:43:34 changed after psr/psr-02 ======= 1 2 3 4 5 >>>>>>> psr/psr-02
沖突文件
vim psr_psr-02.txt <<<<<<< HEAD add some lines on master branch add some lines on psr/psr-01 branch 2016年12月13日14:43:34 changed after psr/psr-02 ======= 1 2 3 4 5 >>>>>>> psr/psr-02
修改沖突文件
# vim psr_psr-02.txt README.md I'am in new branch psr/psr-02 based on psr/psr-01 add some lines on master branch add some lines on psr/psr-01 branch 2016年12月13日14:43:34 changed after psr/psr-02
添加沖突的文件,然后就可以直接push了
Merge branch 'psr/psr-02' Conflicts: psr_psr-02.txt # # It looks like you may be committing a MERGE. # If this is not correct, please remove the file # .git/MERGE_HEAD # and try again. # # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # On branch master # Your branch is ahead of 'origin/master' by 1 commit. #
需要?jiǎng)h掉下面這兩行
Conflicts: psr_psr-02.txt
執(zhí)行g(shù)it push 操作
git push origin master
到此這篇關(guān)于詳解git合并沖突解決方法的文章就介紹到這了,更多相關(guān)git合并沖突內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Git撤銷(xiāo)已經(jīng)推送(push)至遠(yuǎn)端倉(cāng)庫(kù)的提交(commit)信息操作
這篇文章主要介紹了Git撤銷(xiāo)已經(jīng)推送(push)至遠(yuǎn)端倉(cāng)庫(kù)的提交(commit)信息操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-09-09Websocket直播間聊天室教程 GoEasy快速實(shí)現(xiàn)聊天室
這篇文章主要介紹了Websocket直播間聊天室教程 GoEasy快速實(shí)現(xiàn)聊天室,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-05-05使用VScode寫(xiě)一個(gè)html頁(yè)面
本文給大家分享的是使用vscode編寫(xiě)的第一個(gè)html頁(yè)面的全過(guò)程,非常的簡(jiǎn)單,菜鳥(niǎo)看看就行,高手請(qǐng)略過(guò)2020-01-01Jar包一鍵重啟的Shell腳本及新服務(wù)器部署的一些經(jīng)驗(yàn)分享
這篇文章主要介紹了Jar包一鍵重啟的Shell腳本及新服務(wù)器部署的一些經(jīng)驗(yàn),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04Postman設(shè)置環(huán)境變量的實(shí)現(xiàn)示例
本文主要介紹了Postman設(shè)置環(huán)境變量的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02