使用合并更改标记打开文件

时间:2019-02-27 18:21:29

标签: git vim merge diff

当您在许多版本控制系统(git,svn,perforce)中执行合并时,一种可能性是获取带有未解决的“合并更改标记”的文件,如下所示:

common part of the file

>>> ORIGINAL
print("hi there")
==== THEIRS
print("hi there joe")
==== YOURS
print("hi there susan")
<<<<

more common part of the file

就个人而言,如果版本控制系统仅创建了这些文件,并且我可以使用自己选择的difftool可以在闲暇时一个一个地解析它们,我会比较喜欢。像vimdiff -m myfile.py

如何在vimdiff中以3向合并的方式打开这样的文件?可以使用其他工具吗?

编辑

我刚刚发现this提供了脚本并链接了多种可能性,包括它自己的script

1 个答案:

答案 0 :(得分:1)

如@ D.Ben Knoble所述,您想使用:

git mergetool

这将打开Git配置中的编辑器集,其中包含冲突的两面以及要编辑的当前文件。

您可以将编辑器设置如下:

[merge]
    tool = vimdiff
    conflictstyle = merge

另外,我使用了很多以下映射来浏览冲突标记:

nnoremap <leader>n /^\(<<<<\\|====\\|>>>>\)<CR>

<leader>n搜索冲突标记,然后按nN从一个到另一个。