GIT代码冲突解决方案,两种方案详细教程

Posted yqj234

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GIT代码冲突解决方案,两种方案详细教程相关的知识,希望对你有一定的参考价值。

方法一:先pull 再进行commit

       此种方法当工作区文件和远程仓库文件有冲突时不能完成pull的,需要先备份工作区文件,恢复文件与远程服务器一致,才能完成pull,然后将本地修改添加进去,commit–push.这种操作修改文件较多时非常麻烦. 
1.1  远程仓库文件与工作区文件冲突无法完成pull ,远程仓库文件: 

工作区文件: 

1.2 此时工作区文件未进行commit操作 ,pull结果如图: 

1.3  此时需要恢复工作区文件至未修改前版本 
 
1.4  然后进行pull 结果如图 

 

1.5  将修改部分重新加入 commit push 即可; 


方法二:commit—pull 


      此方法是将工作区文件先进行commit,再执行pull,此时当远程仓库文件与本地仓库文件冲突会进行自动合并,自己的修改也会保留,使用mergetool 进行操作处理,重新commit文件即可.这种方法不用在本地修改,重新恢复添加比较省时省力. 

2.1  保存(save)本地工作区修改的代码,根据业务需求来修改,然后保存相关代码
2.2  提交(commit)到本地服务器仓库,进行commit动作,切记是提交到本地服务器仓库
2.3  拉取(pull)远程服务器仓库的代码, 如图:pull成功,但是自动合并,文件显示冲突 

2.4 合并(MerageTool)本地服务器仓库和远程服务器仓库代码Merge Toll工具处理 

2.4.1 选择冲突文件,右键"team",选择“merge tool”,打开的视图中可以查看到修改的对比。


 

2.5 添加到暂存区(Add to Index),  将每个冲突文件修改为正确的,然后每个文件右键"team",选择“Add to Index”,可以看到该文件变成黑色的*号图标

2.6 提交(commit)到本地服务器仓库,千万不能提交到远程服务器仓库

2.7 删除(remove)不需要更新的文件,在同步窗口 (Synchronize),主要是调试的相关文档

2.8 推送(push)到远程服务器仓库 


解决冲突流程

1、工程->Team->同步:

 2、从远程pull至本地,就会出现如下内容:

 3、使用Merge Tool,执行第二项,使用HEAD合并后的效果,再手动修改

 4、修改后的文件需要添加到git index中去:

 5、冲突文件变为修改图标样式,再提交至本地,此时的提交便是merge合并:

 6、此时需要pull的向下箭头和数量没了,注意图标的变化:

 7、现在可以直接push到远程了:

 8   此时configure->save and push一步步执行冲突就搞定了。
 


解决冲突参考方法-网址


以上是关于GIT代码冲突解决方案,两种方案详细教程的主要内容,如果未能解决你的问题,请参考以下文章

git代码冲突怎么解决

如何解决Git代码冲突问题?-Git实战-黑马程序员

vscode 中git解决冲突,合并代码的两种方法

git推送代码冲突解决实践方案

git 解决冲突方案

终极方案:快速解决Android项目依赖冲突