I currently use RCS' merge command to do 3-way merges, but one thing has always annoyed me about it. If I use the -A option, the same change made in both files shows up as a conflict:
<<<<<<< file1
file1 line 1
||||||| orig
orig line 1
=======
file2 line 1
>>>>>>> file2
orig line 2
<<<<<<< orig
=======
line added in both changes
>>>>>>> file2
orig line 3
If I use the default (-E) then those identical changes are not shown, but then the ouput only shows the two contributors, not the ancestor, something like this:
<<<<<<< file1
file1 line 1
=======
file2 line 1
>>>>>>> file2
orig line 2
line added in both changes
orig line 3
Is there some program that will essentially do the same behaviour as RCS merge but has some way of showing all three versions in conflicts while automatically merging identical changes?