Where can I find a convenient graphical diff-tool for Mac OS X (freeware)?

+5  A: 

Install gVim, use "gvim -d".

Paul Tomblin
on the Mac that'd be macvim, or from the command-line it'd be mvim -d file1 file2
It's just "vim" on my Mac. Or /Applications/vim/gvim.
Paul Tomblin
+1  A: 


+1  A: 

Eclipse also has a fairly decent comparison mechanism.

i know and use it but what i need now is a simple tool which accepts two pasted texts
You can still use macvim. Paste one text into an new window. Do a :vnew to split the screen and create a new buffer and paste in the second text. Then, in both windows, do :diffthis.You might need to save the buffers first.
+85  A: 

FileMerge. It is included when you install Xcode.

Johan Lübcke
perfect, thanks!
You can open FileMerge from the command line using the opendiff command.
Pay attention, does not support UTF-8 files.
Jakob Stoeck
@Jakob: it doesn’t? I’ve compared UTF-8 files using it. Are there bugs?
Paul D. Waite
Also you can use these excellent scripts to integrate FileMerge with svn diff: http://www.defraine.net/~brunod/fmdiff/
@Paul same situation for me: http://drp.ly/1eElg1
Here's an article which helped me out: Using FileMerge as the diff/merge tool for git. http://www.jotlab.com/2009/11/16/how-to-use-filemerge-with-git-as-a-diff-tool-on-osx/
+16  A: 

These aren't all freeware, but if you're looking for something with a few more features, a couple other options include:

Changes, a nice looking shareware tool that will diff folder hierarchies and files


TextWrangler, a free text editor which includes a built-in diff feature, as well as its big brother BBEdit


Araxis Merge, which looks to be the most advanced (and most expensive) with tons of features, including three way merging and direct diffing of non-plain text documents such as MS Word and PDF.


Brian Webster
+1 for Changes. Nice app. Can also be used to sync folders which on a Mac is really difficult otherwise.
Jakob Stoeck
Cool. Didn't know TextWrangler can compare files.
+2  A: 

Tkdiff works on the Mac as well as any other platform where Tcl/Tk works. Screenshot.

Bryan Oakley
+3  A: 

Someone above posted a link to my differ, RoaringDiff.


The big story for RoaringDiff is that it is intended for invocation from other programs, such as a Perforce or SVN CLI in the Terminal (or an xterm). It is heavily inspired from xxdiff, though not as fancy.

The differ is a front-end over diff(1). Unlike some of the tools such as FileMerge, RoaringDiff is GNU GPLv3; there is a Google Code project, and I'll happily take any patches to make it better. I use the differ everyday; it's not as flexible as it could be, but I do have a lot of miles on the code--there's some bugs that still need to be fixed (they are filed in the Google Code project).

The GUI is written in Objective-C. I still need to port the renderer to Quartz.

Mitch Haile
+4  A: 

My favorite is http://meld.sourceforge.net/

+14  A: 

Sourcegear's DiffMerge is another good, free alternative:


DiffMerge does inline editing and seems to be using a better diff algoritm than FileMerge is.


I had to use Vim because most of diff-s mentioned here do not understand UTF-8.

+2  A: 

To open Filemerge from the command line, use opendiff, e.g.:

$ opendiff file1.txt file2.txt
Karl R

install tkdiff using MacPorts with:

sudo port install tkdiff

then use it to compare 2 files a.txt and b.txt:

tkdiff a.txt b.txt

it's great and simple. insanely fast, no fuss, lots of shortcuts: qto quit.

when in a svn local copy, you may simply issue

tkdiff my_script.py

to visualize the difference that you made in your lacal copy on that file.

+1  A: 


+3  A: 

With the FileMerge from XCode as suggested above, one can have a nice integration with SVN from command line:

  1. create a wrapper script say opendiff-svn-wrapper.sh with following content:


    shift 5

    /usr/bin/opendiff "$@"

  2. either either define an alias in bash/sh: alias svndiff="svn diff --diff-cmd <path/to/opendiff-svn-wrapper.sh>" and use it like svndiff -r HEAD <somefile> or modify the SVN settings in ~/.subversion/config the diff-cmd directive and then use it as plain old svn diff

+1  A: 

I recommend http://kdiff3.sourceforge.net/

Filemerge crashes on large (2 meg) files.


Still looking for something comparable to winmerge...

+8  A: 


Paid, but it has the best looking UI of any diff tool I've seen for Mac.

+2  A: 

p4merge (The Perforce Visual Merge Tool) is a pretty decent graphical diff/merge tool. It comes with the free Perforce client for Mac OSX. It's also a separate application so you don't necessarily need to use it with Perforce.


hmmmm still nothing comparable to BeyondCompare (http://www.scootersoftware.com/) ... which is one of the two reasons to keep a Windows VM ...


P4Merge that comes with Perfoce is pretty good and comes for free with perforce client. Both terminal and GUI version. perfoce.com



  • Unicode/UTF-8
  • Runs also on other platforms

Sourcegear's DiffMerge is very good!!!!

I recommend!!!


What about comparing folders? For that I found a free program that isn't based on diff (as far as I know) but does exactly what I was using diff for only better... Compare Folders http://www.apple.com/downloads/macosx/system_disk_utilities/comparefolders.html

I found this stackoverflow post when Googling for diff gui programs. My hope was that I'd find one that 1) would compare directories, 2) given a ton of data would organize the information well, 3) would not crash, 4) would not take forever comparing bits of files when all I needed was filesize and timestamp comparisons, 5) free. Since I didn't find any mention, thought I'd share Compare Folders. It's quicker than most at this kind of high level comparison, and it's free.

+1  A: 

You should consider DeltaWalker. It runs on Mac/Win/Linux. It does file AND folder comparisons, and allows in-line editing.


According to reviews on macupdates, the customer service is great.

It's not freeware, but it seems to be one the clients with the most fully rounded feature sets. It seems very comparable to Araxis Merge or the windows-based product BeyondCompare


Version 1.9.1 of Deltawalker can't handle much without crashing/hanging. Also it's not really compatible with paragon's or other NTFS drivers.. very bad implemented and very buggy. it's good for people with low quality standards and/or low demands. But if you are a user who needs more then comparing 1 or 2 gigs(note latest HDD's are over 2 TB!!) stay away from this one, especially when you use NTFS write drivers.. just deleting a file on NTFS will take Deltawalker around 2hours because it is so buggy on large NTFS partitions.