rebase -i -p: Fix --continue after a merge could not be redone

When a merge that has a conflict was rebased, then rebase stopped to let
the user resolve the conflicts. However, thereafter --continue failed
because the author-script was not saved. (This is rebase -i's way to
preserve a commit's authorship.) This fixes it by doing taking the same
failure route after a merge that is also taken after a normal cherry-pick.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Johannes Sixt 2008-12-15 11:05:31 +01:00 committed by Junio C Hamano
parent 03c4829347
commit f5b49ea619
2 changed files with 2 additions and 3 deletions

View File

@ -256,9 +256,8 @@ pick_one_preserving_merges () {
output git merge $STRATEGY -m "$msg" \ output git merge $STRATEGY -m "$msg" \
$new_parents $new_parents
then then
git rerere
printf "%s\n" "$msg" > "$GIT_DIR"/MERGE_MSG printf "%s\n" "$msg" > "$GIT_DIR"/MERGE_MSG
die Error redoing merge $sha1 die_with_patch $sha1 "Error redoing merge $sha1"
fi fi
;; ;;
*) *)

View File

@ -75,7 +75,7 @@ test_expect_success 'rebase -p fakes interactive rebase' '
) )
' '


test_expect_failure '--continue works after a conflict' ' test_expect_success '--continue works after a conflict' '
( (
cd clone2 && cd clone2 &&
git fetch && git fetch &&