git 找到衝突 git合併衝突解決方法

2021-10-16 19:50:11 字數 3014 閱讀 9130

1、git merge衝突了,根據提示找到衝突的檔案,解決衝突

如果檔案有衝突,那麼會有類似的標記

2、修改完之後,執行git add 衝突檔名

3、git commit

注意:沒有-m選項

進去類似於vim的操作介面,把conflict相關的行刪除掉

4、直接push就可以了,因為剛剛已經執行過相關merge操作了

相關的操作如下

衝突產生

[root@monitor demo]# git branch #當前在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' #提交到暫存區

[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分支下也對psr_psr-02.txt進行修改

[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分支合併到當前分支,這時提示衝突了

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.

衝突解決過程

衝突檔案的格式基本如下

*****==到》 psr/psr-02是在其它分支下修改的內容

需要在這個兩個版本中選擇乙個,然後把標記符號也要一起刪除

<<<<<<< head

add some lines on master branch

add some lines on psr/psr-01 branch

2023年12月13日14:43:34 changed after psr/psr-02

>>>>>>> psr/psr-02

衝突檔案

vim psr_psr-02.txt

<<<<<<< head

add some lines on master branch

add some lines on psr/psr-01 branch

2023年12月13日14:43:34 changed after psr/psr-02

>>>>>>> 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

2023年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.

需要刪掉下面這兩行

conflicts:

psr_psr-02.txt

執行git push 操作

git push origin master

git 找到衝突 git 衝突解決

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

git 衝突合併

當我們多人合作的時候,我們從遠端倉庫拉取更新出現衝突的時候,出現以下錯誤,這時候我們就需要手動修改衝突檔案了。git pull origin master from github.com branch master fetch head automatic merge failed fix conf...

Git 合併衝突

步驟 git status 找到衝突的檔案 將衝突去除 將衝突檔案重新加入臨時區 git add egis api v1 router.py 合併分支 git rebase continue 重新提交 git review 步驟 git checkout master git pull origin...