Comparison of file comparison tools

From Wikipedia, the free encyclopedia

Contents

[edit] General

Basic general information about file comparison software.

Creator Software license Cost First public release date Latest stable version Windows Macintosh Linux
Araxis Merge Araxis Ltd Proprietary USD 129 (std) - 269 (pro) 1993 6.5.2318 (20 December 2006) Yes No (under development) No
Beyond Compare Scooter Software Proprietary USD 30 2.4 (Mar 6, 2006) Yes (Win95 and up) No No
ECMerge ElliƩ Computing Proprietary from USD 12 / floating licence (ActiveX also available on demand) 2005 2.0 (Nov 16, 2006) Yes (Win98 and up) No (can be done if asked) Yes (also Sun Solaris)
Compare It! Grig Software Proprietary USD 29 3.86 (November 25, 2005) Yes No No
diff Douglas McIlroy Free - 1974 Yes Yes (OS X) Yes
diff3 Free - Yes Yes (OS X) Yes
Diff Commander Nikeware Proprietary USD 29 2005 2.0 (July 17, 2006) Yes No No
DiffDaff cyberpromote Freeware - 1.0.0 (June 6, 2006) Yes No No
Eclipse Compare Free -
Ediff Michael Kifer GPL -
ExamDiff Pro PrestoSoft Proprietary USD 35, with a free version available (ExamDiff) 1998 3.4.2 (May 26, 2006) 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 (OS X) No
Guiffy SureMerge Guiffy Software Proprietary Single user USD 75 / Mutli-user USD 50 per user 2000 7.4 (September 25, 2006) Yes Yes Yes
IntelliJ IDEA Compare JetBrains Proprietary Part of application 5.1.1 (April 7, 2006) Yes Yes Yes
KDiff3 Joachim Eibl GPL - 2002 0.9.91 (Nov 1, 2006) Yes Yes (OS X) Yes
Kompare Otto Bruggeman GPL - 3.5.0 (November 29, 2005) Yes (Cygwin) No Yes
Meld Stephen Kennedy GPL - 1.1.3 (Jan 9, 2006) No Yes (OS X) Yes
SmartSynchronize SyntEvo Proprietary USD 39 1.5.1 Yes (Java) Yes (Java) Yes (Java)
SwiftCompare Oorja Software Proprietary USD 27 1.1 (Jan 19, 2007) Yes (Win98 and up) No No
TkDiff [1] GPL - 4.1.3 (February 20, 2006) Yes (Tcl) Yes (Tcl) Yes (Tcl)
TortoiseMerge [2] GPL - 1.2.6 (October 31, 2005) Yes (Win2k and up) No No
Total Commander Compare Christian Ghisler Proprietary Part of application 6.54a (February 16, 2006) 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.50 (October 15, 2005) Yes No No
WinDiff Microsoft Proprietary (with source code) Part of Platform SDK Yes No No
WinMerge Dean Grimm GPL - 1998 2.6.4 (January 17, 2007) 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 (Java) Yes (Java) Yes (Java)
Creator Software license Cost First public release date Latest stable version Windows Macintosh Linux

[edit] Features

GUI CLI Horizontal / Vertical Non-linear compare 3-way comparison Directory comparison ZIP support FTP support Merge Patch creation Syntax Highlighting Reports
Araxis Merge Yes Yes (and Full Automation API) both Yes Yes Yes Yes Yes (UNIX diff) No Yes XML/HTML/HTML/Slideshow reports, UNIX diff
Beyond Compare Yes optional No Yes Yes Yes Yes Yes
ECMerge Yes Yes (+ActiveX available) optional Yes (optional, and ancestor can be hidden) Yes Yes Yes (v 2.0) Yes Yes (3 formats, also for directories) Yes Yes customizable XML/HTML reports, UNIX diff
diff No Yes horizontal No No Yes No Yesfs
diff3 No Yes horizontal No Yes (non-optional) No No Yesfs
DiffDaff Yes No optional No No Yes No No No
Eclipse Compare
Ediff
ExamDiff Pro Yes Yes optional No Yes Yes (through a plug-in) Yes (through a plug-in) Yes No No Yes, UNIX, HTML, and printable diff reports
Guiffy SureMerge Yes Yes (and API) both Yes Yes Yes Yes HTML 4.01 / CSS - W3C validated
IntelliJ IDEA Compare Yes
fc No Yes horizontal No No No No No No No
FileMerge Yes No (just launches the GUI) vertical No Yes No No Yes No No
KDiff3 Yes Yes both Yes Yes (on KDE via KIO) (on KDE via KIO) Yes
Kompare Yes vertical No Yes Yes No
Meld Yes Yes vertical optional Yes
SmartSynchronize Yes Yes vertical Yes Yes No No Yes No
SwiftCompare Yes No Yes No (In the next release) No (In the next release) Yes Yes Yes
TkDiff Yes
TortoiseMerge Yes Yes No No No Yes No No No
Total Commander Compare Yes optional No Yes Yes Yes
vimdiff Yes Yes both Yes No Yes Yes Yes Yes No
WinDiff Yes Yes horizontal Yes No Yes No No No No No
WinMerge Yes Yes optional Yes No Yes Yes No Yes Yes Yes Yes XML/HTML/CSV reports
xxdiff Yes Yes optional Yes Yes Yes No No Yes
zsCompare Yes Yes horizontal No Yes Yes No Yes Yes
GUI CLI Horizontal / Vertical Non-linear compare 3-way comparison Directory comparison ZIP support FTP support Merge Patch creation Syntax Highlighting Reports

[edit] 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) Optional
diff optional Optional
diff3
DiffDaff No No No No Yes
Eclipse Compare
Ediff
ExamDiff Pro No Yes (optional) Yes (optional) Yes (optional) Yes (optional)
Guiffy SureMerge Yes (filesystem dependend) 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
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
Filename casing CRC Filedate Daylight saving Character casing

[edit] Software libraries

  • Perl (found on CPAN)
    • Algorithm::Diff
    • Array::Diff
    • Text::Diff
    • XML::Diff