This answer is great for seeing a visual diff between two files that are checked into git: How do I view 'git diff' output with a visual diff program?
Howev
UPDATE
Mac: I now use SourceTree. Thoroughly recommended. I especially like the way you can stage / unstage hunks.
Linux: I've had success with:
meld
E.g. to install smartgit
on Ubuntu:
.deb
from https://www.syntevo.com/smartgit/download/This does the job:
git-diffall with a GUI diff tool like meld. See point 5 here:
http://rubyglazed.com/post/15772234418/git-ify-your-command-line
There's a nice post about git and meld here: http://nathanhoad.net/how-to-meld-for-git-diffs-in-ubuntu-hardy