Comparison of file comparison tools
Appearance
General
Basic general information about file comparison software.
Name | Creator | Software license | Cost | First public release date | Latest stable version | Windows | Macintosh | Linux | Other platforms |
---|---|---|---|---|---|---|---|---|---|
Altova DiffDog | Altova | Proprietary | USD 129 (single license), with a free 30 day trial version available | 2007 | Yes (Win NT, 2000 & XP) | No | No | ||
Araxis Merge | Araxis Ltd | Proprietary | USD 129 (std) - 269 (pro) | 1993 | 2007.3225 (Apr 10, 2007) | Yes | Yes (under development, but stable enough to be used) | No | |
Beyond Compare | Scooter Software | Proprietary | USD 30 | 2.5.2 (Nov 21, 2007) | Yes (Win95 and up) | No | No | ||
ECMerge | Ellié Computing | Proprietary | from USD 30 (std) / USD 60 (pro) / floating licence | 2005 | 2.1 (October 22, 2007 | Yes (Win98 and up) | Yes (Mac OS X) | Yes | Sun Solaris |
Compare It! | Grig Software | Proprietary | USD 29 | 3.86 (Jan 8, 2006) | Yes | No | No | ||
Deltopia DeltaWalker | Deltopia Inc | Proprietary | Personal: 30 (std), 60 (oro); Commercial: 100 (std), 190 (oro); all USD | 2007 | 2007 (1.5.6 Dec 3, 2007) | Yes | Yes (Mac OS X) | Yes | |
diff | GNU Project | Free | - | 1974 | Yes | Yes (Mac OS X) | Yes | ||
diff3 | GNU Project | Free | - | Yes | Yes (Mac OS X) | Yes | |||
Diff Commander | Nikeware | Proprietary | USD 29 | 2005 | 2.0 (Feb 26, 2007) | Yes | No | No | |
DiffDaff | cyberpromote | Freeware | - | 1.0.0 (June 6, 2006) | Yes | No | No | ||
Softinterface Diff Doc | Softinterface | Proprietary | USD 199 (single license), with a free 30 day Doc' trial version available | 2002 | 2007.3225 (Jun 06, 2007) | Yes (Windows 98-Vista and up) | No | No | |
DiffMerge | SourceGear | Proprietary | Free | 2003 | 3.1 (Oct 10, 2007) | Yes | Yes | Yes | |
Eclipse Compare | Free | - | Yes | Yes (Mac OS X) | Yes | Anything with Java | |||
Ediff | Michael Kifer | GPL | - | Yes | Yes (Mac OS X) | Yes | Anything with Emacs | ||
ExamDiff Pro | PrestoSoft | Proprietary | USD 35, with a free version available (ExamDiff) | 1998 | 3.5.1.2 (Apr 6, 2007) | Yes (Win98 and up) | No | No | |
fc | Microsoft | Proprietary | Part of OS | Yes (DOS) | No | No | |||
FileMerge | AppleComputer, Inc. | Proprietary | Free (part of Apple Developer Tools) | 2.2.1 (2005) | No | Yes (Mac OS X) | No | ||
Guiffy SureMerge | Guiffy Software | Proprietary | Single user USD 66 / Mutli-user USD 44 per user | 2000 | 8.4 (Mar 25, 2008) | Yes | Yes | Yes | Anything with Java |
IntelliJ IDEA Compare | JetBrains | Proprietary | Part of application | 6.0.5 (2007) | Yes | Yes | Yes | ||
KDiff3 | Joachim Eibl | GPL | - | 2002 | 0.9.92 (Apr 15, 2007) | Yes | Yes (Mac OS X) | Yes | |
Kompare | Otto Bruggeman | GPL | - | 3.5.0 (Nov 29, 2005) | Yes (Cygwin) | No | Yes | ||
LizardTF | Ian Cornwell | GPL | Free - part of LizardTF | 0.1.3 (Jan 10, 2008) | Yes (Inc. 64bit) | No | No | ||
Meld | Stephen Kennedy | GPL | - | 1.1.5 (June 9, 2007) | No | Yes (Mac OS X) | Yes | ||
SmartSynchronize | SyntEvo | Proprietary | USD 52 | 2.5.1 (Mar 11, 2007) | Yes | Yes | Yes | Anything with Java | |
SwiftCompare | Oorja Software | Proprietary | USD 27 | 1.1 (Jan 19, 2007) | Yes (Win98 and up) | No | No | ||
TkDiff | [1] | GPL | - | 4.1.3 (Feb 20, 2006) | Yes (Tcl) | Yes (Tcl) | Yes (Tcl) | Anything with Tcl | |
TortoiseMerge | [2] | GPL | Part of TortoiseSVN | 1.4.4 (June 9, 2007) | Yes (Win2k and up) | No | No | ||
Total Commander Compare | Christian Ghisler | Proprietary | Part of application | 7.01 (Jun 21, 2007) | Yes | No | No | ||
UltraCompare | IDM Computer Solutions | Proprietary | USD 29.95 | 5.0 (May 18, 2007) | Yes | No | No | ||
vimdiff | Bram Moolenaar et al | GPL-compatible | - | 2001 | 7.0 (May 7, 2006) | Yes | Yes | Yes | |
Visual Comparer | Nikeware | Proprietary | USD 29 | 1.60 (Feb 26, 2007) | Yes | No | No | ||
WinDiff | Microsoft | Proprietary (with source code) | Part of Platform SDK | Yes | No | No | |||
WinMerge | Dean Grimm | GPL | - | 1998 | 2.8.0 (April 3, 2008) | Yes (Win95 and up) | No | No | |
xxdiff | Martin Blais | GPL | - | 2000 | 3.2 (June 30, 2006) | Yes (ver. 2.9) | Yes (source) | Yes (source) | |
zsCompare | Zizasoft | Proprietary | USD 35 (lite) USD 99.95 (std) USD 199.95 (pro) | 2004 | 3.03 (July 6, 2006) | Yes | Yes | Yes | Anything with Java |
csvdiff | Roland Schmitz | GPL | - | 2006 | 1.3a (April 1, 2007) | Yes | Yes | Yes | Anything with Perl |
Name | Creator | Software license | Cost | First public release date | Latest stable version | Windows | Macintosh | Linux | Other platforms |
Features
Name | GUI | CLI | Scripting | Horizontal / Vertical | Non-linear compare | 3-way comparison | Directory comparison | Binary comparison | Merge | Syntax Highlighting | Reports |
---|---|---|---|---|---|---|---|---|---|---|---|
Softinterface 'Diff Doc' | Yes | Yes (and Full Automation API) | both | No | Yes | No | Yes | Yes DOC, HTML, CSV | |||
Araxis Merge | Yes | Yes (and Full Automation API) | both | Yes (Professional Edition only) | Yes | Yes | Yes (since Araxis Merge 2007) | Yes XML/HTML/HTML/Slideshow reports, UNIX diff | |||
Beyond Compare | Yes | Yes | optional | No (Expected in Version 3, late 2008) | Yes | Yes | No (Expected in Version 3) | Yes | |||
ECMerge | Yes | Yes (+ActiveX available) | Yes ECMAScript | optional | Yes (optional, and ancestor can be hidden) | Yes | Yes | Yes | Yes customizable XML/HTML/CSV/text reports, UNIX diff | ||
Deltopia DeltaWalker | Yes | Yes | both | Yes | Yes | Yes | No | Yes HTML/XML, Patch creation | |||
diff | No | Yes | horizontal | No | No | Yes | |||||
diff3 | No | Yes | horizontal | No | Yes (non-optional) | No | |||||
DiffDaff | Yes | No | optional | No | No | Yes | No | ||||
DiffMerge | Yes | No | vertical | Yes | Yes | Yes | Yes | No | Yes | ||
Eclipse Compare | Yes | vertical | Yes | Yes | Yes | Yes | |||||
Ediff | Yes | No | both | Yes | Yes | Yes | Yes | ||||
ExamDiff Pro | Yes | Yes | optional | No | Yes | Yes | No | Yes, UNIX, HTML, and printable diff reports | |||
Guiffy SureMerge | Yes | Yes (and API) | both | Yes | Yes | Yes HTML 4.01 / CSS - W3C validated | |||||
IntelliJ IDEA Compare | Yes | vertical | Yes | Yes | Yes | ||||||
fc | No | Yes | horizontal | No | No | No | No | ||||
FileMerge | Yes | Yes ('opendiff') | vertical | Yes (optional, by supplying an ancestor file/directory) | Yes | Yes | Yes | No | |||
KDiff3 | Yes | Yes | both | Yes | Yes | Yes | Yes | ||||
Kompare | Yes | vertical | No | Yes | No | No | |||||
LizardTF | Yes | No | both | Yes | Yes | v.stamps | Yes | ||||
Meld | Yes | Yes | vertical | optional | Yes | No | Yes | ||||
SmartSynchronize | Yes | Yes | vertical | Yes | Yes | Yes | |||||
SwiftCompare | Yes | No | Yes | Yes | Yes | Yes | |||||
TkDiff | Yes | No | |||||||||
TortoiseMerge | Yes | Yes | Yes | No | Yes | No | No | ||||
Total Commander Compare | Yes | optional | No | Yes | Yes | Yes | |||||
UltraCompare | |||||||||||
vimdiff | Yes | Yes | both | Yes | No | Yes | No | ||||
WinDiff | Yes | Yes | horizontal | Yes | No | Yes | No | No | |||
WinMerge | Yes | Yes | optional | Yes | No | Yes | Yes | Yes | No | ||
xxdiff | Yes | Yes | optional | Yes | Yes | Yes | Yes | ||||
zsCompare | Yes | Yes | horizontal | No | Yes | Yes | |||||
csvdiff | No | Yes | No | No | No | No | Yes | ||||
Name | GUI | CLI | Scripting | Horizontal / Vertical | Non-linear compare | 3-way comparison | Directory comparison | Binary comparison | Merge | 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 |
---|---|---|---|---|---|---|---|
Araxis Merge | Yes | VSS, Perforce, Subversion | Yes (UNIX diff) | ||||
Beyond Compare | Yes | Yes | Yes | ||||
ECMerge | Yes | Yes | CVS (1.11-, 1.12+), evolution, Perforce, SVN, VSS | Yes (3 formats, also for directories) | Yes | Yes | Yes (UTF8, UTF16 LE/BE, UTF32 LE/BE) |
diff | No | Yesfs | |||||
diff3 | No | Yesfs | |||||
DiffDaff | No | No | |||||
DiffMerge | No | No | No | Partial * | |||
Eclipse Compare | Yes | ||||||
Ediff | Yes | Yes | |||||
ExamDiff Pro | Yes (through a plug-in) | Yes (through a plug-in) | No | ||||
Guiffy SureMerge | Yes | Yes (File Compares: UTF8, UTF16, MBCS, SJIS, over 150 file encoding and character set formats, Folder Compares support Unicode file/folder names) | |||||
IntelliJ IDEA Compare | |||||||
fc | No | No | No | ||||
FileMerge | No | Yes (supported by OS) | No | ||||
KDiff3 | (on KDE via KIO) | (on KDE via KIO) | Partial * | ||||
Kompare | Yes | ||||||
LizardTF | Team Foundation Server (TFS) | tba | tba | tba | Yes | ||
Meld | |||||||
SmartSynchronize | No | No | No | ||||
SwiftCompare | No (In the next release) | No (In the next release) | |||||
TkDiff | |||||||
TortoiseMerge | No | No | No | ||||
Total Commander Compare | Yes | ||||||
UltraCompare | |||||||
vimdiff | Yes | Yes | Yes | ||||
WinDiff | No | No | No | No | |||
WinMerge | Yes | No | Yes | Partial * | |||
xxdiff | No | No | |||||
zsCompare | Yes | No | Yes | ||||
csvdiff | No | No | No | ||||
Name | ZIP support | FTP support | Version Control browsing | Patch creation | Patch application | Patch preview | Unicode support |
- * cannot identify UTF-8 files as unicode unless they have a BOM mark in the beginning.
Aspects
What aspects can be / are compared?
Filename casing | CRC | Filedate | Daylight saving | Character casing | |
---|---|---|---|---|---|
Araxis Merge | Yes (optional) | Yes (optional) | Yes (optional) | ||
Beyond Compare | No | Yes | optional | optional | Optional |
ECMerge | Yes (parametered) | Yes (CRC32/MD5) | Yes (optional) | Yes (optional, also filesize) | Yes (optional) |
diff | optional | Optional | |||
diff3 | |||||
DiffDaff | No | No | No | No | Yes |
DiffMerge | Yes (platform dependent) | No | Yes | No | Yes (optional) |
Eclipse Compare | |||||
Ediff | |||||
ExamDiff Pro | No | Yes (optional) | Yes (optional) | Yes (optional) | Yes (optional) |
Guiffy SureMerge | Yes (filesystem dependent) Plus, support of Unicode file/folder names | Yes (optional) | Yes (optional) | ||
IntelliJ IDEA Compare | |||||
fc | No | Optional | |||
FileMerge | No | No | No | Optional | |
KDiff3 | Yes | No | Yes (optional) | No | Optional |
Kompare | Yes | ||||
Meld | Yes (filesystem dependend) | No | Yes | No | Yes |
SmartSynchronize | |||||
SwiftCompare | Yes | Yes (optional) | Yes (optional) | Yes (optional) | |
TkDiff | |||||
TortoiseMerge | |||||
Total Commander Compare | optional | Optional | |||
UltraCompare | |||||
vimdiff | No | No | No | No | Yes |
WinDiff | No | No | when different | Yes | Optional |
WinMerge | No | No | Optional | Optional | |
xxdiff | |||||
zsCompare | Yes (optional) | Yes (Adler32, CRC32) | Yes (optional) | Yes (optional) | Optional |
csvdiff | Yes (optional) | Yes (optional) |