Mac Developer Library Developer
Search

 

This manual page is part of Xcode Tools version 5.0

To obtain these tools:

If you are running a version of Xcode Tools other than 5.0, view the documentation locally:

  • In Xcode

  • In Terminal, using the man(1) command

Reading manual pages

Manual pages are intended as a quick reference for people who already understand a technology.

  • To learn how the manual is organized or to learn about command syntax, read the manual page for manpages(5).

  • For more information about this technology, look for other documentation in the Apple Developer Library.

  • For general information about writing shell scripts, read Shell Scripting Primer.



GIT-MERGETOOL(1)                                 Git Manual                                 GIT-MERGETOOL(1)



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

SYNOPSIS
       git mergetool [--tool=<tool>] [-y | --[no-]prompt] [<file>...]


DESCRIPTION
       Use git mergetool to run one of several merge utilities to resolve merge conflicts. It is typically
       run after git merge.

       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, git mergetool 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 git mergetool --tool-help for the list of valid
           <tool> settings.

           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 configuration 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.

       --tool-help
           Print a list of merge tools that may be used with --tool.

       -y, --no-prompt
           Don't prompt before each invocation of the merge resolution program.

       --prompt
           Prompt before each invocation of the merge resolution program. This is the default behaviour; the
           option is provided to override any configuration settings.

TEMPORARY FILES
       git mergetool creates *.orig backup files while resolving merges. These are safe to remove once a
       file has been merged and its git mergetool session has completed.

       Setting the mergetool.keepBackup configuration variable to false causes git mergetool to
       automatically remove the backup as files are successfully merged.

GIT
       Part of the git(1) suite



Git 1.8.3                                        05/24/2013                                 GIT-MERGETOOL(1)

Reporting Problems

The way to report a problem with this manual page depends on the type of problem:

Content errors
Report errors in the content of this documentation with the feedback links below.
Bug reports
Report bugs in the functionality of the described tool or API through Bug Reporter.
Formatting problems
Report formatting mistakes in the online version of these pages with the feedback links below.

Feedback