git衝突解決

2021-06-29 15:11:41 字數 1011 閱讀 5798

2年前 (2013-08-09) 

10564瀏覽

同事在使用git pull**時,經常會碰到有衝突的情況,提示如下資訊:

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.

這個意思是說更新下來的內容和本地修改的內容有衝突,先提交你的改變或者先將本地修改暫時儲存起來。

處理的方式非常簡單,主要是使用git stash命令進行處理,分成以下幾個步驟進行處理。

1、先將本地修改儲存起來

$ git stash
這樣本地的所有修改就都被暫時儲存起來 。是用git stash list可以看到儲存的資訊:

其中stash@就是剛才儲存的標記。

2、pull內容

暫存了本地修改之後,就可以pull了。

$ git pull
3、還原暫存的內容

$ git stash pop stash@
系統提示如下類似的資訊:

auto-merging c/environ.c

conflict (content): merge conflict in c/environ.c

意思就是系統自動合併修改的內容,但是其中有衝突,需要解決其中的衝突。

4、解決檔案中衝突的的部分

開啟衝突的檔案,會看到類似如下的內容:

其中updated upstream 和*****之間的內容就是pull下來的內容,====和stashed changes之間的內容就是本地修改的內容。碰到這種情況,git也不知道哪行內容是需要的,所以要自行確定需要的內容。

解決完成之後,就可以正常的提交了。

git 找到衝突 git 衝突解決

用git pull來更新 的時候,遇到了下面的問題 出現這個問題的原因是其他人修改了 php並提交到版本庫中去了,而你本地也修改了 php,這時候你進行git pull操作就好出現衝突了,解決方法,在上面的提示中也說的很明確了。1 保留本地的修改 的改法 1 直接commit本地的修改 也一般不用這...

git解決衝突

一 當發生以下三種情況時,git會自動進行合併 1.修改不同的檔案 2.修改相同檔案的不同區域 3.同時更改檔名和檔案內容 二 邏輯衝突 自動合併成功執行後,並不一定意味著萬事大吉,在某些特殊情況下,確存在者邏輯衝突。假如乙個使用者修改了函式返回值,但是,另外乙個使用者仍然使用舊的返回值,雖然成功合...

Git 解決衝突

合併分支或者合併某一提交 合併分支 git merge 分支名字 合併某一提交 gitgit cherry pick commitid 執行上步操作後,如果萬幸沒有任何錯誤,合併成功,這是最樂見其成的事,但是如果合併不成功,就需要檢視一下當前分支狀態 git status如果檢視分支狀態出現以下語句...