FileMerge (opendiff) can really come in handy when you need to visually compare merging conflicts. Other times it's just a nice visual way to review your days work.
The following method works by creating a simple bash script (git-diff-cmd.sh) that sets us up with the proper command line arguments for Git to pass off files to FileMerge.
Open the bash script for editing:
Paste the following code:
#!/bin/sh /usr/bin/opendiff "$2" "$5" -merge "$1"
Make the bash script executable:
chmod +x ~/bin/git-diff-cmd.sh
Tell Git (globally) to run our bash script when 'git diff' is issued:
git config --global diff.external ~/bin/git-diff-cmd.sh
Now head over to your Git-aware project directory and issue a
git diff /path/to/modified/file.py and FileMerge will pop up showing you the
differences against it and HEAD.
You can also do things like
git diff --cached to review all the changes