Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
GIT-MERGE-INDEX(1)		  Git Manual		    GIT-MERGE-INDEX(1)

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

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

       This looks up the <file>(s) in the index	and, if	there are any merge
       entries,	passes the SHA-1 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.

	   Do not interpret any	more arguments as options.

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

	   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.

	   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

       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

       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.


	   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


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

       Part of the git(1) suite

Git 2.28.0			  07/26/2020		    GIT-MERGE-INDEX(1)


Want to link to this manual page? Use this URL:

home | help