ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

解决冲突 : AutoMatic merge failed;fix conflicts and then commit the result

2020-09-19 18:33:45  阅读:783  来源: 互联网

标签:git fix xxx 合并 failed 冲突 conflicts commit 代码


冲突的类型

逻辑冲突

git自动处理(合并/应用补丁)成功,但是逻辑上是有问题的。 比如另外一个人修改了文件名,但我还使用老的文件名,这种情况下自动处理是能成功的,但实际上是有问题的。 又比如,函数返回值含义变化,但我还使用老的含义,这种情况自动处理成功,但可能隐藏着重大BUG。 这种问题,主要通过自动化测试来保障。所以最好是能够写出比较完备的自动化测试用例。 这种冲突的解决,就是做一次BUG修正。不是真正解决git报告的冲突。

内容冲突

两个用户修改了同一个文件的同一块区域,git会报告内容冲突。这种也比较常见.

树冲突

文件名修改造成的冲突,称为树冲突。 比如,a用户把文件改名为a.c,b用户把同一个文件改名为b.c,那么b将这两个commit合并时,会产生冲突。 $ git status
    added by us:    b.c
    both deleted:   origin-name.c
    added by them:  a.c 如果最终确定用b.c,那么解决办法如下: git rm a.c
git rm origin-name.c
git add b.c
git commit 执行前面两个git rm时,会告警“file-name : needs merge”,可以不必理会。 树冲突也可以用git mergetool来解决,但整个解决过程是在交互式问答中完成的,用d 删除不要的文件,用c保留需要的文件。 最后执行git commit提交即可。

 

 

问题:

CONFLICT(content):Merge conflict in XXXX/.DS_Store.

AutoMatic merge failed;fix conflicts and then commit the result.

 

冲突内容:合并冲突在 XXXX.DS_Store文件中

自动合并失败;修改冲突然后提交修改后的结果。

 

<<<<<<<< HEAD

       你写的代码

===============

       别人写的代码

>>>>>>>>>>>>>>> e4tghhhqd128dqwenasjdqasddcvbdgffg

 

 解决:

首先先分析两个人的代码是实现相同功能而写的重复的代码,

还是各自实现的不同的功能的代码。

如果是重复代码:两个二选一删除一个,然后再把这些冲突标示符删除即可;

如果不是重复代码,两个都需要保留,只把冲突符号(红色部分)删除即可。

是自己的就保留自己的代码,

是别人的就保留别人的代码.

编译通过之后重新提交:

 

 修改完成后:

 

1 git add . 将文件添加到暂存区

2 git commit -m “例如 完成了xxx功能的开发 (提交到本地仓库)"

3 git checkout xxx  切换到所开发的分支

4 git pull origin xxx 把服务器代码拉下和本地代码合并

( 注意先拉取在合并, 避免代码冲突 )

5 git merge xxx 合并自己的任务分支

6 git push  origin xxx  把合并好的最新代码推送到服务器端

标签:git,fix,xxx,合并,failed,冲突,conflicts,commit,代码
来源: https://www.cnblogs.com/angel648/p/13697146.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有