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:
vi ~/bin/git-diff-cmd.sh
-
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
against HEAD.
Very confusing terminology. "Choose Left" moves the arrow from the right to the left. This seems that the code on the right goes into the chosen code on the left. - Please provide an improvement to help the user.