Favourite diff tool?

Aug 20, 2011 at 8:28pm
This post is more of an awareness raising exercise than a personal request for info.

Key! While I in the process of updating my diff tool, I had a look to see what had been mentioned about them on this site. After all, they are one of the key tools in software development. Now maybe this site is quiet on the subject as everyone knows all about it. But...

Learning! I think they would prove useful to people learning C++. They could set aside copies of their work as they progress, after each attempt at a problem. And then, when they finally "release", compare these against their working version, to get a better handle on what was going on (or not) earlier on.

Awareness? There was only one post I could find and it bemused me as it was recommending WinDiff [1] in 2008! (Another tool, Beyond Compare, was also mentioned. I don't know much about it, but I have seen favourable comments about it in the newsgroups).

DiffMerge!! My tool of choice at the moment is SourceGear DiffMerge [2], a new, minor release of which came out just a month ago. I have been using this tool since not long after version 3.0 was released (in 2007). I like it because it isn't fussy, doing what I need and no more, and because it formats code diffs reasonably cleanly. It also runs on Windows, Mac OS X and Linux, so I can use the same tool on Windows and Ubuntu, and it's free!

SCM [3] Like most other modern diff tools, DiffMerge can be used to diff against a source control system. In addition to this diff capability, DiffMerge can be used as a merge tool. I am currently using it with both SVN and Perforce (I find Perforce's own tools a buit cluttered).

More... The other tool which is popular in the Windows world is WinMerge 2.0 [4], but I find it a bit fussy. This tool has been about from before 2003 (version 1.0 was about even earlier, but I don't know how popular it was back then. Apparently the next version of this tool will be cross-platform, implemented using Qt.

And more... The only others I've used are WinDiff (which I only use for bulk file synchronization these days) and Araxis Merge [5]. Araxis is very good, but you have to pay for it (the standard version costs about 100 quid / 150 bucks / 110 euros. But I prefer DiffMerge as it sticks firmly to the KISS principle. [6]

And yet more! I don't know much about the other diff tools as listed on Wikipedia.org
http://en.wikipedia.org/wiki/Comparison_of_file_comparison_tools

So... Have you got a preferred "visual" diff tool? Or do you still prefer to use the console/terminal diff.exe?

Andy

I have no connection with SourceGear! :-) I tracked DiffMerge down in early 2008 when I started a -- short -- contract for a company who did not provide their developers with a difftool as part of their standard tookset! :-(

[1] http://support.microsoft.com/kb/159214

[2] http://www.sourcegear.com/products.html
DiffMerge 3.3.1
DiffMerge is a FREE application to visually compare and merge files for Windows, Mac OS X and Linux.

[3] http://en.wikipedia.org/wiki/Software_configuration_management

[4] http://winmerge.org/

[5] http://www.araxis.com/merge/

[6] http://en.wikipedia.org/wiki/KISS_principle
Last edited on Aug 20, 2011 at 9:03pm
Aug 20, 2011 at 8:56pm
I tend to just use diff...

Though, if I had to pick something nice, I'd probably use TkDiff
http://wiki.tcl.tk/3773
:-)
Aug 21, 2011 at 5:52am
I tend to just look at the two files in question line-by-line. It helps keep my brain healthy and my eyes red.

In all seriousness, I don't have a preferred one, though I haven't used many to be honest. At work we use TortoiseSVN, so I just default to using TortoiseMerge.

http://tortoisesvn.tigris.org/TortoiseMerge.html
Last edited on Aug 21, 2011 at 5:52am
Aug 21, 2011 at 6:12am
I've never explicitly used any diff like programs. So far I haven't had a need for them. And as such I have no preference :P
Aug 21, 2011 at 12:18pm
closed account (1yR4jE8b)
I absolutely love KDiff3. I find it easier to use then all other diffs and lets you customize the merge result. Many diff/mergetools only let you Take Left or Take Right, but Kdiff3 let's you Take Both, and also edit the result, very awesome.

It's written using QT/KDE libraries so it runs on most platforms.
Aug 22, 2011 at 5:50am
I use one "obscure" Windows software. It is very small and just one executable. It is called ExamDiff. It serves my needs well and nothing fanciful but ok. If you need more features I think others would be better.
Aug 22, 2011 at 5:55pm
@sohguanh - Examdiff looks looks like it has a pretty reasonable feature set! Quite similar to the diff capabilities of the tool I use (DiffMerge). But it doesn't appear to provide merge functionality.

http://www.prestosoft.com/edp_examdiff.asp
Last edited on Aug 22, 2011 at 5:55pm
Aug 23, 2011 at 1:08am
The version I have was long time ago and it was just one Windows executable no major setup.exe and whole lot's of installing DLL's etc. Now I see they are still around and I wonder if they still distribute just one Windows executable or not.

Prestosoft make pretty good Windows software. Their cost are pretty acceptable and their quality does not do very bad either. But just as times moved, I see they are still pretty entrenched in their Windows desktop software arena. Wonder if they intend to move to mobile also?

As for merge, I wonder if their paid ExamDiffPro provide that feature though. This feature does not kill me as I can edit the file in other software and ExamDiff will pop up say file contents have changed ask me to re-compare again.
Aug 24, 2011 at 8:51pm
I use WinMerge a lot....it works very well and has a nice capabilities for directories/file compare.
Aug 24, 2011 at 9:17pm
I prefer tkdiff.
Aug 24, 2011 at 9:54pm
Technically, diff only shows the differences between files. You need to use patch to "merge" files. (Though I'd expect really fancy GUI software to do that anyway, of course.)
Topic archived. No new replies allowed.