git-merge-index(1)
==================
v0.1, May 2005

NAME
----
git-merge-index - Runs 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 cache 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
-------
--::
	Interpret all following arguments as filenames.

-a::
	Run merge against all files in the cache 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 are over.

-q::
	Do not complain about failed merge program (the merge program
	failure usually indicates conflicts during 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 the a script calling 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 (ie "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 gitlink:git[7] suite

