The git-diffall script provides a directory based diff mechanism
for git.

To determine what diff viewer is used, the script requires either
the 'diff.tool' or 'merge.tool' configuration option to be set.

This script is compatible with most common forms used to specify a
range of revisions to diff:

  1. git diffall: shows diff between working tree and staged changes
  2. git diffall --cached [<commit>]: shows diff between staged
     changes and HEAD (or other named commit)
  3. git diffall <commit>: shows diff between working tree and named
     commit
  4. git diffall <commit> <commit>: show diff between two named commits
  5. git diffall <commit>..<commit>: same as above
  6. git diffall <commit>...<commit>: show the changes on the branch
     containing and up to the second, starting at a common ancestor
     of both <commit>

Note: all forms take an optional path limiter [-- <path>*]

The '--extcmd=<command>' option allows the user to specify a custom
command for viewing diffs.  When given, configured defaults are
ignored and the script runs $command $LOCAL $REMOTE.  Additionally,
$BASE is set in the environment.

This script is based on an example provided by Thomas Rast on the
Git list [1]:

[1] http://thread.gmane.org/gmane.comp.version-control.git/124807
