git-merge-index(1)
==================

NAME
----
git-merge-index - Run a merge for files needing merging


SYNOPSIS
--------
'git merge-index' [-o] [-q] <merge-program> (-a | [--] <file>\*)

DESCRIPTION
-----------
This looks up the <file>(s) in the index and, if there are any merge
entries, passes the SHA1 hash for those files as arguments 1, 2, 3 (empty
argument if no file), and <file> as argument 4.  File modes for the three
files are passed as arguments 5, 6 and 7.

OPTIONS
-------
\--::
	Do not interpret any more arguments as options.

-a::
	Run merge against all files in the index that need merging.

-o::
	Instead of stopping at the first failed merge, do all of them
	in one shot - continue with merging even when previous merges
	returned errors, and only return the error code after all the
	merges.

-q::
	Do not complain about a failed merge program (a merge program
	failure usually indicates conflicts during the merge). This is for
	porcelains which might want to emit custom messages.

If 'git-merge-index' is called with multiple <file>s (or -a) then it
processes them in turn only stopping if merge returns a non-zero exit
code.

Typically this is run with a script calling git's imitation of
the 'merge' command from the RCS package.

A sample script called 'git-merge-one-file' is included in the
distribution.

ALERT ALERT ALERT! The git "merge object order" is different from the
RCS 'merge' program merge object order. In the above ordering, the
original is first. But the argument order to the 3-way merge program
'merge' is to have the original in the middle. Don't ask me why.

Examples:

  torvalds@ppc970:~/merge-test> git merge-index cat MM
  This is MM from the original tree.			# original
  This is modified MM in the branch A.			# merge1
  This is modified MM in the branch B.			# merge2
  This is modified MM in the branch B.			# current contents

or

  torvalds@ppc970:~/merge-test> git merge-index cat AA MM
  cat: : No such file or directory
  This is added AA in the branch A.
  This is added AA in the branch B.
  This is added AA in the branch B.
  fatal: merge program failed

where the latter example shows how 'git-merge-index' will stop trying to
merge once anything has returned an error (i.e., `cat` returned an error
for the AA file, because it didn't exist in the original, and thus
'git-merge-index' didn't even try to merge the MM thing).

Author
------
Written by Linus Torvalds <torvalds@osdl.org>
One-shot merge by Petr Baudis <pasky@ucw.cz>

Documentation
--------------
Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel.org>.

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