GIT\-DIFFTOOL

Section: Git Manual (1)
Updated: 10/30/2009
Index Return to Main Contents
 

NAME

git-difftool - Show changes using common diff tools  

SYNOPSIS

git difftool [--tool=<tool>] [-y|--no-prompt|--prompt] [<git diff options>]  

DESCRIPTION

git-difftool is a git command that allows you to compare and edit files between revisions using common diff tools. git difftool is a frontend to git-diff and accepts the same options and arguments.  

OPTIONS

-y, --no-prompt

Do not prompt before launching a diff tool.

--prompt

Prompt before each invocation of the diff tool. This is the default behaviour; the option is provided to override any configuration settings.

-t <tool>, --tool=<tool>

Use the diff tool specified by <tool>. Valid merge tools are: kdiff3, kompare, tkdiff, meld, xxdiff, emerge, vimdiff, gvimdiff, ecmerge, diffuse, opendiff and araxis.

If a diff tool is not specified, git-difftool will use the configuration variable diff.tool. If the configuration variable diff.tool is not set, git-difftool will pick a suitable default.

You can explicitly provide a full path to the tool by setting the configuration variable difftool.<tool>.path. For example, you can configure the absolute path to kdiff3 by setting difftool.kdiff3.path. Otherwise, git-difftool assumes the tool is available in PATH.

Instead of running one of the known diff tools, git-difftool can be customized to run an alternative program by specifying the command line to invoke in a configuration variable difftool.<tool>.cmd.

When git-difftool is invoked with this tool (either through the -t or --tool option or the diff.tool configuration variable) the configured command line will be invoked with the following variables available: $LOCAL is set to the name of the temporary file containing the contents of the diff pre-image and $REMOTE is set to the name of the temporary file containing the contents of the diff post-image. $BASE is provided for compatibility with custom merge tool commands and has the same value as $LOCAL.

See git-diff(1) for the full list of supported options.  

CONFIG VARIABLES

git-difftool falls back to git-mergetool config variables when the difftool equivalents have not been defined.

diff.tool

The default diff tool to use.

difftool.<tool>.path

Override the path for the given tool. This is useful in case your tool is not in the PATH.

difftool.<tool>.cmd

Specify the command to invoke the specified diff tool.

See the --tool=<tool> option above for more details.

difftool.prompt

Prompt before each invocation of the diff tool.
 

SEE ALSO

git-diff(1)

Show changes between commits, commit and working tree, etc

git-mergetool(1)

Run merge conflict resolution tools to resolve merge conflicts

git-config(1)

Get and set repository or global options
 

AUTHOR

Written by David Aguilar <m[blue]davvid@gmail.comm[][1]>.  

DOCUMENTATION

Documentation by David Aguilar and the git-list <m[blue]git@vger.kernel.orgm[][2]>.  

GIT

Part of the git(1) suite  

NOTES

1.
davvid@gmail.com
mailto:davvid@gmail.com
2.
git@vger.kernel.org
mailto:git@vger.kernel.org