path: root/Documentation/git-difftool.txt
diff options
Diffstat (limited to 'Documentation/git-difftool.txt')
1 files changed, 97 insertions, 0 deletions
diff --git a/Documentation/git-difftool.txt b/Documentation/git-difftool.txt
new file mode 100644
index 0000000..af68466
--- /dev/null
+++ b/Documentation/git-difftool.txt
@@ -0,0 +1,97 @@
+git-difftool - Show changes using common diff tools
+'git difftool' [--tool=<tool>] [-y|--no-prompt] [<'git diff' options>]
+'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.
+ Do not prompt before launching a diff tool.
+-t <tool>::
+ Use the diff tool specified by <tool>.
+ Valid merge tools are:
+ kdiff3, kompare, tkdiff, meld, xxdiff, emerge, vimdiff, gvimdiff,
+ ecmerge, diffuse and opendiff
+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 linkgit:git-diff[1] for the full list of supported options.
+'git-difftool' falls back to 'git-mergetool' config variables when the
+difftool equivalents have not been defined.
+ The default diff tool to use.
+ Override the path for the given tool. This is useful in case
+ your tool is not in the PATH.
+ Specify the command to invoke the specified diff tool.
+See the `--tool=<tool>` option above for more details.
+ Show changes between commits, commit and working tree, etc
+ Run merge conflict resolution tools to resolve merge conflicts
+ Get and set repository or global options
+Written by David Aguilar <>.
+Documentation by David Aguilar and the git-list <>.
+Part of the linkgit:git[1] suite