diff options
author | Junio C Hamano <junkio@cox.net> | 2005-10-13 22:46:43 +0400 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2005-10-13 22:46:43 +0400 |
commit | 73319032c8d2b2c73138d5caee1d2838fe1305d2 (patch) | |
tree | b66dab45d46cde41f3d4e365faf03c405d0e6c3f | |
parent | 8af12741ee0e35f43b3180b435cd33642c183e97 (diff) |
git-am: do not fail if 3-way fallback succeeds.
The current one incorrectly stops there without committing.
Signed-off-by: Junio C Hamano <junkio@cox.net>
-rwxr-xr-x | git-am.sh | 20 |
1 files changed, 12 insertions, 8 deletions
@@ -296,15 +296,19 @@ do git-apply --index "$dotest/patch"; apply_status=$? if test $apply_status = 1 && test "$threeway" = t then - (fall_back_3way) || stop_here $this - - # Applying the patch to an earlier tree and merging the - # result may have produced the same tree as ours. - if test '' = "$(git-diff-index --cached --name-only -z HEAD)" + if (fall_back_3way) then - echo No changes -- Patch already applied. - go_next - continue + # Applying the patch to an earlier tree and merging the + # result may have produced the same tree as ours. + changed="$(git-diff-index --cached --name-only -z HEAD)" + if test '' = "$changed" + then + echo No changes -- Patch already applied. + go_next + continue + fi + # clear apply_status -- we have successfully merged. + apply_status=0 fi fi if test $apply_status != 0 |