0

I have written a custom merge driver for JSON which outputs diff3 format. All good visual mergetools I have tried insist on re-merging the file before showing the GUI. Are there any tools which can use the conflictfile with <<<<<<< ||||||| ======= >>>>>>> as input? Ideally in diff3 format but the regular conflict format is fine too.

I've had some luck with:
VSCode - can recognize the markers and provides buttons, but doesn't have a side-by-side view. A proper 3 way merge is on their roadmap so I'm hopeful.
TkDiff - works but is very difficult to use. Hard to install on Windows and it's definitely not primarily meant for merging. The merge interface is hidden on startup and showing it isn't remembered, many unnecessary popup dialogs, saving is stupid, etc. The latest version (5.0) wasn't tested for conflict resolution; a bug in the script makes it impossible to open it (I submitted a fix).

I've had no luck with:
Sublime Merge
Meld
P4Merge
Kdiff3 Vimdiff

Vulume
  • 15
  • 5
  • Is the answer you're looking for in part 2 of [this answer](https://stackoverflow.com/questions/41803083/how-to-perform-a-three-way-diff-in-git-without-merging/41886622#41886622)? – jthill Jul 09 '20 at 15:18
  • @jthill No, both vimdiff and kdiff3 try to remerge the file. To be clear, I want the mergetool to not try at all. I want it to look at the conflictfile and interpret what's in there. It should only look at $MERGED, not at $BASE $LOCAL and $REMOTE. However, you have given me an idea. I could write a script that comes before kdiff3 which splits up $MERGED into the 3 input files and overwrite those. – Vulume Jul 10 '20 at 09:19

0 Answers0