]> Kevux Git Server - rit/commitdiff
rebase -i -p: Fix --continue after a merge could not be redone
authorJohannes Sixt <j6t@kdbg.org>
Mon, 15 Dec 2008 10:05:31 +0000 (11:05 +0100)
committerJunio C Hamano <gitster@pobox.com>
Sun, 21 Dec 2008 09:08:51 +0000 (01:08 -0800)
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>
git-rebase--interactive.sh
t/t3409-rebase-preserve-merges.sh

index 1172e47..89c39eb 100755 (executable)
@@ -256,9 +256,8 @@ pick_one_preserving_merges () {
                                output git merge $STRATEGY -m "$msg" \
                                        $new_parents
                        then
-                               git rerere
                                printf "%s\n" "$msg" > "$GIT_DIR"/MERGE_MSG
-                               die Error redoing merge $sha1
+                               die_with_patch $sha1 "Error redoing merge $sha1"
                        fi
                        ;;
                *)
index 5ddd1d1..820e010 100755 (executable)
@@ -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 &&
        git fetch &&