]> git.ipfire.org Git - thirdparty/git.git/commit
sequencer: be more careful with external merge
authorPhillip Wood <phillip.wood@dunelm.org.uk>
Tue, 30 Jun 2026 15:28:53 +0000 (16:28 +0100)
committerJunio C Hamano <gitster@pobox.com>
Tue, 30 Jun 2026 19:03:13 +0000 (12:03 -0700)
commita24c41eeebb2bc8031bf3fdfcff57cb0410f90c8
treea9b5342158724154719f4fa1b3fb476419f3c7c0
parentfe6610fcc013f1ff1a77174b28ea1d5900ae7c59
sequencer: be more careful with external merge

If an external merge strategy cannot merge (for example because it
would overwrite an untracked file) it exits with a non-zero exit
code other than 1. This should be treated differently to a merge
with conflicts which is signalled by an exit code of 1 because as
the merge failed we need to reschedule the last pick. The caller
expects us to return -1 in this case. Also reschedule without trying
to merge if the commit message cannot be written as that prevents us
from successfully picking the commit.

Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
sequencer.c
t/t3404-rebase-interactive.sh