git-mergetool

Run merge conflict resolution tools to resolve merge conflicts

TLDR

Launch the default merge tool to resolve conflicts

>_ git mergetool
copy

List valid merge tools

>_ git mergetool --tool-help
copy

Launch the merge tool identified by a name

>_ git mergetool --tool [tool_name]
copy

Don't prompt before each invocation of the merge tool

>_ git mergetool --no-prompt
copy

Explicitly use the GUI merge tool (see the merge.guitool config variable)

>_ git mergetool --gui
copy

Explicitly use the regular merge tool (see the merge.tool config variable)

>_ git mergetool --no-gui
copy

SYNOPSIS



gitmergetool [ --tool=<tool>] [ -y | --[no -]prompt] [<file> ...]

DESCRIPTION


Use gitmergetool to run one of several merge utilities to resolve merge conflicts . It is typically run after gitmerge .
If one or more <file> parameters are given, the merge tool program will be run to resolve differences on each file (skipping those without conflicts) . Specifying a directory will include all unresolved files in that path . If no <file> names are specified, gitmergetool will run the merge tool program on every file with merge conflicts .

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 .

TEMPORARY FILES


gitmergetool creates *.orig backup files while resolving merges . These are safe to remove once a file has been merged and its gitmergetool session has completed .
Setting the mergetool.keepBackup configuration variable to false causes gitmergetool to automatically remove the backup as files are successfully merged .

GIT


Part of the git (1)suite

Copied to clipboard
free 100$ digital ocean credit