如何解决git冲突文件

时间:2016-04-19 09:43:13

标签: git

<<<<<<< HEAD
asd
||||||| merged common ancestors
=======g
test
>>>>>>> b0acaed6842e69ac407029e0f580b54b64258980
<<<<<<< HEAD


test312
||||||| merged common ancestors
=======

asdfdfsfdsafdadfasd
>>>>>>> 6d92ab6b31d03c5c13803eca25762b4fb273a0c5

git冲突的示例场景。如何清理或修复文件中的 <<<<<<< HEAD >>>>>>> 6d92ab6b31d03c5c13803eca25762b4fb273a0c5

3 个答案:

答案 0 :(得分:0)

标记仅指示合并冲突在文件中的位置。在您选择的编辑器中手动解决合并冲突,删除以&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;当你走的时候=======。

完成后保存文件,运行测试并提交更改。

总是一个好主意也可以为任何其他合并标记grep回购。

答案 1 :(得分:0)

这是diff3(而不是diff2)的输出 您可以使用merge.conflictstyle控制您希望的显示方式。

  

merge.conflictStyle

     

指定在合并时将冲突的帅哥写入工作树文件的样式。

     

默认值为merge,显示&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;冲突标记,由一方做出的更改,=======标记,由另一方做出的更改,然后是&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;标记。

     

替代样式diff3添加了|||||||标记和=======标记之前的原始文本。

您只需编辑文件,按照您想要的方式修复它。

vi <file name>

# Fix the error in the file
# add the file and commit it
git add .

# no need to supply message, it will have the Merge message automatically
git commit

答案 2 :(得分:0)

您需要手动删除冲突。据我所知,没有自动化方法 然后从命令提示符处使用命令git commit -i filename 然后ESC:wq
然后git push origin <branchname>