git-mergetool
Run merge conflict resolution tools to resolve merge conflicts
TLDR
Launch the default merge tool to resolve conflicts
$ git mergetool
List valid merge tools
$ git mergetool --tool-help
Launch the merge tool identified by a name
$ git mergetool --tool [tool_name]
Don't prompt before each invocation of the merge tool
$ git mergetool --no-prompt
Explicitly use the GUI merge tool (see the merge.guitool config variable)
$ git mergetool --gui
Explicitly use the regular merge tool (see the merge.tool config variable)
$ git mergetool --no-gui
SYNOPSIS
gitmergetool [ --tool=<tool>] [ -y | --[no -]prompt] [<file> ...]
DESCRIPTION
OPTIONS
-t <tool>, --tool=<tool> Use the merge resolution program specified by <tool> . Valid values include emerge, gvimdiff, kdiff3, meld, vimdiff, and tortoisemerge . Run gitmergetool --tool -help for the list of valid <tool> settings .
If a merge resolution program is not specified, gitmergetool will use the configuration variable merge.tool . If the configuration variable merge.tool is not set, gitmergetool 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, gitmergetool assumes the tool is available in PATH . Instead of running one of the known merge tool programs, gitmergetool can be customized to run an alternative program by specifying the command line to invoke in a configuration variable mergetool.<tool> .cmd . When gitmergetool 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, gitmergetool will prompt the user to indicate the success of the resolution after the custom tool has exited .--tool -help Print a list of merge tools that may be used with --tool .
-y, --no -prompt Don prompt before each invocation of the merge resolution program . This is the default if the merge resolution program is explicitly specified with the --tool option or with the merge.tool configuration variable .
--prompt Prompt before each invocation of the merge resolution program to give the user a chance to skip the path .
-g, --gui When git-mergetool is invoked with the -g or --gui option the default merge tool will be read from the configured merge.guitool variable instead of merge.tool . If merge.guitool is not set, we will fallback to the tool configured under merge.tool .
--no -gui This overrides a previous -g or --gui setting and reads the default merge tool will be read from the configured merge.tool variable .
-O<orderfile> Process files in the order specified in the <orderfile>, which has one shell glob pattern per line . This overrides the diff.orderFile configuration variable (see git-config (1)). To cancel diff.orderFile ,use -O/dev/null .