git pull 沖突解決

導(dǎo)語:

在公司團(tuán)隊(duì)中寫完代碼就要提交到git上面,因?yàn)槎嗳撕献?,先要將遠(yuǎn)端的代碼pull更新到本地。往往這時(shí)候因?yàn)榇蠹覍?duì)同一個(gè)文件同一個(gè)地方做了操作,導(dǎo)致pull代碼沖突發(fā)生,工程崩潰。提示錯(cuò)誤信息如下:

error: Your local changes to 'c/environ.c' would be overwritten by merge.  Aborting.
Please, commit your changes or stash them before you can merge.

這個(gè)提示意思就是說更新下來的內(nèi)容和本地修改的內(nèi)容有沖突,先提交你改變的內(nèi)容或者先將你本地修改的內(nèi)容暫時(shí)存起來。
下面我們就分幾步解決處理這個(gè)pull沖突問題.

1.存儲(chǔ)本地修改的內(nèi)容

git stash

這句命令就是將本地修改的代碼做一份備份存儲(chǔ)起來,可以用git stash list 查看剛剛備份保存的內(nèi)容:

git stash list.png

其中stash@{0}就是剛剛備份存儲(chǔ)的標(biāo)記

2.pull內(nèi)容

將本地代碼做了備份保存后,就可以pull遠(yuǎn)端代碼

git pull


3.還原備份暫存的代碼

git stash pop stash@{0}

stash@{0}是你剛剛備份存儲(chǔ)的標(biāo)記
這時(shí)候系統(tǒng)會(huì)提示類似以下的信息:

Auto-merging c/environ.c
CONFLICT (content): Merge conflict in c/environ.c

這個(gè)提示內(nèi)容意思就是系統(tǒng)自動(dòng)合并修改的內(nèi)容,但是當(dāng)中會(huì)有沖突,需要解決其中的沖突。

4.解決文件中的沖突內(nèi)容

打開上面提示的沖突文件,會(huì)看到類似的內(nèi)容:

沖突提示.png

其中Updated upstream和=======之間的內(nèi)容是從遠(yuǎn)端pull下來的代碼,=======和Stashed changes之間的內(nèi)容則是你本地修改的內(nèi)容。這時(shí)候,需要你修改決定留下哪些需要的內(nèi)容。

最后,解決完沖突,就可以正常git提交了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容