已经无法合并还报请合并git_详解git合并冲突解决方法

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

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.

#

需要删掉下面这两行

Conflicts:

psr_psr-02.txt

执行git push 操作

git push origin master

到此这篇关于详解git合并冲突解决方法的文章就介绍到这了,更多相关git合并冲突内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值