Jump to content

Comparison of file comparison tools

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Libnoon (talk | contribs) at 15:29, 3 September 2014 (Indicate that tkdiff is GPLv2+ as per http://sourceforge.net/p/tkdiff/code/HEAD/tree/tags/REL-4-2/README.txt). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.


General

Basic general information about file comparison software.

Name Creator Software license Cost First public release date Year of latest stable version Windows Macintosh Linux Other platforms Max Supported File Size
Beyond Compare Scooter Software[1] Proprietary USD 30 (std), 50 (pro) 1996 2014 (v4.0) Yes Yes Yes
Compare++ Coode Software[2] Proprietary USD 29.95 with free 30-day trial[3] 2010 2013 (v2.15) Yes[4] No No
diff, diff3 AT&T BSD 3-clause, BSD 4-clause, CDDL, GPL, Proprietary - 1974 Yes Yes (Mac OS X) Yes ported to most platforms as part of SCCS > 2GB but less than 64 bits
Ediff Michael Kifer[5] GPL Free 1994 2.81.4 Yes Yes (Mac OS X) Yes Anything with Emacs
ExamDiff Pro PrestoSoft[6] Proprietary USD 35, with a trial version available[7] 1998 2014 (v7.0.1.6) Yes (Win98 and up) No No
fc Microsoft[8] Proprietary Part of OS 1987 Yes (DOS) No No
FileMerge Apple Inc. Proprietary Free (part of Apple Developer Tools) 1993 (part of NEXTSTEP 3.2[9]) 2014 (v2.8) No Yes (Mac OS X) No
IntelliJ IDEA Compare JetBrains[10] Proprietary Part of application 2007 (v6.0.5) Yes Yes Yes
jEdit JDiff plugin Various[11] GPL Free 1998 2012 (3.3.0) Yes Yes Yes Anything with Java
Kompare (aka KDiff3) Otto Bruggeman[12] GPLv2+ Free Yes [13] Yes (Mac OS X) Yes
Lazarus Diff Lazarus (software) GPL - 2000 2009 Yes Yes Yes FreeBSD
Meld Stephen Kennedy[14] GPLv2+ - 2002 2014-1-23 (v1.8.4) Yes[15] Yes Yes BSD, Solaris
Perforce P4Merge Perforce Proprietary[16] - 2013 (2013.2) Yes Yes Yes Sun Solaris
Pretty Diff Austin Cheney[17] GPL-compatible Free 2009 2012-07-05 Yes (Web) Yes (Web) Yes (Web) Node.js, Windows Script Host
Tkdiff Tkdiff[18] GPLv2+ Free 2003 (or before) 2011-11-27 (v4.2) Yes (Tcl) Yes (Tcl) Yes (Tcl) Anything with Tcl
Total Commander Compare Christian Ghisler[19] Proprietary Part of application 2010-12-17 (v7.56a) Yes No No
twdiff (TextWrangler Diff Helper) Bare Bones Software, Inc.[20] Proprietary free (with TextWrangler [free]) 2012 (1.0 (v22)) No Yes No No
vimdiff Bram Moolenaar et al. GPL-compatible - 2001 2006-05-07 (v7.0) Yes Yes Yes Anything with vim
WinDiff Microsoft[21] Proprietary Part of Platform SDK 1992 2003 ? (v6.1) Yes No No No
WinMerge Dean Grimm[22] GPL Free 1998 2013-02-03 (v2.14.0) Yes (Win95 and up) No No 2 GiB
UCC USC CSSE[23] USC-CSSE Limited Public License[24] Free 2009 2010-07 Yes Yes Yes {2.6.9} Sun Solaris
Name Creator Software license Cost First public release date Year of latest stable version Windows Macintosh Linux Other platforms Max Supported File Size

Compare features

Name Show in-line changes Directory comparison Binary comparison Moved lines 3-way comparison Merge Structured comparison[25]
Beyond Compare Yes Yes Yes No Yes Yes (Pro only)
Compare++ Yes Yes Yes Yes Yes (C/C++,C#,Java,Javascript,CSS3)
diff No Yes partly No No No
diff3 No No Yes (non-optional)
Eclipse Compare Yes Yes Yes
Ediff Yes Yes Yes Yes Yes
ExamDiff Pro Yes Yes Yes Yes[26] Yes (ExamDiff Pro Master, only) [27] Yes
fc No No Yes No No
FileMerge Yes Yes Yes Yes (optional ancestor) Yes
IntelliJ IDEA Compare Yes Yes Yes
jEdit JDiff plugin Yes No Yes
Kompare (aka KDiff3) Yes No No
Lazarus Diff
Meld Yes Yes No Yes Yes Yes
Perforce P4Merge Yes No No Yes Yes
Pretty Diff Yes No No No No No Yes
Tkdiff Yes No No No No No
Total Commander Compare Yes Yes Yes No Yes
vimdiff Yes Yes (via DirDiff plugin) No (can do 2, 3, or 4 file diffs, but not a 3-way diff)
WinDiff Yes Yes Yes Yes No No
WinMerge Yes Yes No Yes No Yes
UCC Yes Yes Yes Yes No Yes
Name Show in-line changes Directory comparison Binary comparison Moved lines 3-way comparison Merge Structured comparison[25]

API / editor features

Name GUI CLI Scripting Horizontal / Vertical Syntax Highlighting Reports
Beyond Compare Yes Yes Yes both Yes XML, HTML, CSV, Text, Unix Patch
Compare++ Yes Yes both Yes HTML, Text(combined or side-by-side)
diff No Yes horizontal
diff3 No Yes horizontal
Eclipse Compare Yes vertical Yes
Ediff Yes Yes elisp both Yes
ExamDiff Pro Yes Yes optional Yes UNIX, HTML, Diff
fc No Yes horizontal
FileMerge Yes Yes vertical Yes No
IntelliJ IDEA Compare Yes vertical Yes
jEdit JDiff plugin Yes both Yes
Kompare (aka KDiff3) Yes vertical No
Lazarus Diff Yes Yes
Meld Yes horizontal Yes No
Perforce P4Merge Yes Yes vertical No No
Pretty Diff Yes Yes JavaScript Both No XHTML
Tkdiff Yes
Total Commander Compare Yes optional
vimdiff Yes Yes vim script both Yes HTML
WinDiff Yes Yes horizontal No Text
WinMerge Yes Yes vertical Yes CSV, Tab-delimited, HTML, XML
UCC Yes Yes vertical Yes Text, CSV
Name GUI CLI Scripting Horizontal / Vertical Syntax Highlighting Reports

Other features

Some other features which did not fit in previous table

Name ZIP support FTP support Version Control browsing Patch creation Patch application Patch preview Unicode support XML-aware
Beyond Compare Yes Yes Yes[28] Yes No Yes Yes
Compare++ SVN, CVS, Git, Microsoft TFS, Perforce, VSS using command line Yes
diff No No No Yes No No Yes No
diff3 No No No
Eclipse Compare Yes
Ediff Yes Yes RCS, CVS, SVN, Mercurial, git (anything supported by Emacs' VC-mode)[29] Yes Yes Yes
ExamDiff Pro Yes[30] Yes[31] normal diff only Yes
fc No No No
FileMerge No supported by OS No No No
IntelliJ IDEA Compare Yes Yes Yes Yes Yes Yes
jEdit JDiff plugin Yes Yes Yes Yes Yes Yes Yes
Kompare (aka KDiff3) Yes
Lazarus Diff
Meld CVS, Subversion, Git Yes Yes
Perforce P4Merge No Yes
Pretty Diff No No No No No No Yes Yes
Tkdiff No No CVS, RCS, Subversion No No No No No
Total Commander Compare Yes Yes
vimdiff Yes Yes Yes Yes
WinDiff No No No No
WinMerge Yes No Mercurial,[32] Subversion,[33] Visual Source Safe, Rational ClearCase[34] Yes Yes
UCC Yes No Yes
Name ZIP support FTP support Version Control browsing Patch creation Patch application Patch preview Unicode support XML-aware

Aspects

What aspects can be / are compared?

Name Filename casing CRC Filedate Daylight saving Character casing
Beyond Compare Yes Yes Yes Yes Yes
Compare++ Yes Yes Yes Yes
diff Yes No No No Optional
diff3
Eclipse Compare
Ediff
ExamDiff Pro No Yes Yes Yes Yes
fc No Optional
FileMerge No No No Optional
IntelliJ IDEA Compare
jEdit JDiff plugin
Kompare (aka KDiff3) Yes
Lazarus Diff
Meld
Perforce P4Merge No No No Yes
Pretty Diff No No No Optional
Tkdiff
Total Commander Compare Optional Optional
vimdiff No No No No Yes
WinDiff No No when different Yes Optional
WinMerge No No Optional Optional
UCC No No Yes No
Name Filename casing CRC Filedate Daylight saving Character casing

See also

References

  1. ^ Scooter Software
  2. ^ Coode Software
  3. ^ Coodesoft trial
  4. ^ Compare++ Operating system information
  5. ^ Michael Kifer
  6. ^ PrestoSoft
  7. ^ ExamDiff Trial
  8. ^ Microsoft
  9. ^ NeXT Product Marketing (Fall 1993). "What's New in Release 3.2?". NEXTSTEP In Focus. 3 (4). NeXT Computer, Inc. Retrieved 18 July 2014.
  10. ^ JetBrains
  11. ^ jedit.org
  12. ^ Otto Bruggeman
  13. ^ Installing Kompare in Windows
  14. ^ Stephen Kennedy
  15. ^ Meld/Windows
  16. ^ Perforce Free License
  17. ^ Pretty Diff
  18. ^ tkdiff
  19. ^ Christian Ghisler
  20. ^ Bare Bones Software, Inc.
  21. ^ Microsoft
  22. ^ Dean Grimm
  23. ^ USC CSSE
  24. ^ USC-CSSE Limited Public License
  25. ^ a b Compare logical sections (class, methods)
  26. ^ Examdiff
  27. ^ Examdiff
  28. ^ Using Beyond Compare with Version Control Systems
  29. ^ gnu.org Support-for-Version-Control
  30. ^ through a plug-in
  31. ^ through a plug-in
  32. ^ "tortoisehg / stable / wiki / FAQ —". Bitbucket.org. Retrieved 2010-07-06.
  33. ^ "Using WinMerge with other tools - WinMerge 2.12 Manual". Winmerge.org. Retrieved 2010-07-06.
  34. ^ "About". WinMerge. Retrieved 2010-07-06.