非图形3向合并工具

4 rcs three-way-merge

我目前使用RCS的merge命令进行三向合并,但有一件事总是让我恼火.如果我使用-A选项,则在两个文件中进行的相同更改都会显示为冲突:

<<<<<<< file1
file1 line 1
||||||| orig
orig line 1
=======
file2第1行
>>>>>>> file2
orig line 2
<<<<<<< orig
=======
在两个更改中添加了行
>>>>> >> file2
orig line 3

如果我使用默认值(-E),那么相同的更改不会显示,但是输出只显示两个贡献者,而不是祖先,如下所示:

<<<<<<< file1
file1 line 1
=======
file2 line 1
>>>>>>> file2
orig line 2
line in
changed changes orig line 3

是否有一些程序基本上会执行与RCS合并相同的行为,但有一些方法可以显示冲突中的所有三个版本,同时自动合并相同的更改?

小智 7

看起来像diff3有一些有趣的选择.

在ubuntu上:

       -m  --merge
              Output merged file instead of ed script (default -A).

你要求非图形化,但vimdiff和gvimdiff可以做3个相邻的窗口.