apply: register conflicted stages to the index
authorJunio C Hamano <gitster@pobox.com>
Wed, 9 May 2012 23:50:58 +0000 (16:50 -0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 9 Jul 2012 21:40:03 +0000 (14:40 -0700)
commit4f4a6cb9882516d75f345772c9bf00b891753f10
treea57560f41782f788828fac856d32cd343d36d2ce
parent099f3c421a446e2eef3a1bb6aea0e451711ddd88
apply: register conflicted stages to the index

Now we have all the necessary logic to fall back on three-way merge when
the patch does not cleanly apply, insert the conflicted entries to the
index as appropriate.  This obviously triggers only when the "--index"
option is used.

When we fall back to three-way merge and some of the merges fail, just
like the case where the "--reject" option was specified and we had to
write some "*.rej" files out for unapplicable patches, exit the command
with non-zero status without showing the diffstat and summary.  Otherwise
they would make the list of problematic paths scroll off the display.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/apply.c
t/t4108-apply-threeway.sh [new file with mode: 0755]