0
点赞
收藏
分享

微信扫一扫

git冲突解决-详细版本

刘员外__ 2022-04-16 阅读 67
git

一、git简介

无论是远程分支origin/master还是本地分支master分支,这算是两个分支,其他分支同理。分支之间可以切换使用checkout


二、git可能导致冲突的情况

1. 两个分支之间进行push、pull操作。

  • 一般是把远程的分支pull到本地
  • 一般是把本地分支push到远程

2. 两个分支之间进行merge操作

一般是本地A分支merge到本地B分支,操作时首先切换到B分支,然后执行merge A


三、git冲突conflict解决

情况1:push操作

报错截图
在这里插入图片描述
造成这种情况是因为,本地master分支修改了A.txt文件,并且远程master的A.txt文件也被修改了(此时我不知道远程被改了)。
解决方案就是(其实报错截图很清楚了,在push之前先pull一下),当我们pull完之后会发现本地分支的A.txt文件有变化如下图,然后手动选择一个要保留的,是保留第二行还是保留第四行,然后删除其他所有行,保存后执行命令add、commit(会弹出对话框提示冲突信息,直接:q即可)。然后git push即可
在这里插入图片描述

情况2:merge操作

报错截图
在这里插入图片描述
造成这种情况的原因是,我在本地分支master上修改了B.txt文件(修改内容echo b >> B.txt),然后add、commit。然后本地分支conflict也修改了B.txt文件(修改内容echo a >> B.txt),然后add、commit。接下来我就切换到本地master分支执行merge,报错。
解决方案就是,当你执行merge后,查看本地master分支的B.txt文件发现有变化如下图,选择保留第二行还是保留第四行,然后删除其他所有行,保存后执行命令add、commit(会弹出对话框提示冲突信息,直接:q即可)。到此代码合并完毕。
在这里插入图片描述


注意,解决冲突时会弹出冲突信息的对话框,直接:q即可

在这里插入图片描述

举报

相关推荐

0 条评论