vimdiff有助于以图形方式显示两个文件的差异,并允许我们从左到右/从右到左选择更改。
我正在处理的文件是大文件,大多数差异vimdiff报告可以自动合并,除了少数。由于需要花费大量时间在vimdiff中通过diff进行差异并采取行动。
我想知道vimdiff中是否有一个选项可以自动注释左右文件中的差异,只要没有歧义并且让冲突的解决方案类似于工具svn merge和cvs merge工具呢? / p>
答案 0 :(得分:4)
无法自动合并两个文件中的更改,除非我们有一个基本副本,其中这两个文件分支并单独更改。如果项目在一侧而不在另一侧,则无法判断此项目是新添加的还是已删除现有项目。由于在存储库中合并文件时存在基本副本,cvs merge,svn merge可以自动合并更改。
答案 1 :(得分:3)
如果您不使用版本控制,您可以尝试使用diff和patch:
diff file.orig file.txt >patch.txt
patch file2.txt patch.txt
将合并更改,冲突的行将被放置在单独的文件中。
答案 2 :(得分:0)
看起来vimdiff不允许这样做。手册页说 “vimdiff - 使用Vim编辑文件的两个或三个版本并显示差异”
但您可以查看Kdiff3,以便进行比较和合并。