git-mergetool(1)
================

NAME
----
git-mergetool - Run merge conflict resolution tools to resolve merge conflicts

SYNOPSIS
--------
'git-mergetool' [--tool=<tool>] [<file>]...

DESCRIPTION
-----------

Use `git mergetool` to run one of several merge utilities to resolve
merge conflicts.  It is typically run after linkgit:git-merge[1].

If one or more <file> parameters are given, the merge tool program will
be run to resolve differences on each file.  If no <file> names are
specified, `git mergetool` will run the merge tool program on every file
with merge conflicts.

OPTIONS
-------
-t or --tool=<tool>::
	Use the merge resolution program specified by <tool>.
	Valid merge tools are:
	kdiff3, tkdiff, meld, xxdiff, emerge, vimdiff, gvimdiff, ecmerge, and opendiff
+
If a merge resolution program is not specified, `git mergetool`
will use the configuration variable `merge.tool`.  If the
configuration variable `merge.tool` is not set, `git mergetool`
will pick a suitable default.
+
You can explicitly provide a full path to the tool by setting the
configuration variable `mergetool.<tool>.path`. For example, you
can configure the absolute path to kdiff3 by setting
`mergetool.kdiff3.path`. Otherwise, `git mergetool` assumes the
tool is available in PATH.
+
Instead of running one of the known merge tool programs
`git mergetool` can be customized to run an alternative program
by specifying the command line to invoke in a configration
variable `mergetool.<tool>.cmd`.
+
When `git mergetool` is invoked with this tool (either through the
`-t` or `--tool` option or the `merge.tool` configuration
variable) the configured command line will be invoked with `$BASE`
set to the name of a temporary file containing the common base for
the merge, if available; `$LOCAL` set to the name of a temporary
file containing the contents of the file on the current branch;
`$REMOTE` set to the name of a temporary file containing the
contents of the file to be merged, and `$MERGED` set to the name
of the file to which the merge tool should write the result of the
merge resolution.
+
If the custom merge tool correctly indicates the success of a
merge resolution with its exit code then the configuration
variable `mergetool.<tool>.trustExitCode` can be set to `true`.
Otherwise, `git mergetool` will prompt the user to indicate the
success of the resolution after the custom tool has exited.

Author
------
Written by Theodore Y Ts'o <tytso@mit.edu>

Documentation
--------------
Documentation by Theodore Y Ts'o.

GIT
---
Part of the linkgit:git[7] suite
