From: Phil Hord Date: Tue, 10 Jul 2012 22:52:28 +0000 (-0400) Subject: stash: invoke rerere in case of conflict X-Git-Tag: v1.7.11.6~3^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=743bf6d8b07f0c5717bf5c37b8b50ae9de619c83;p=git stash: invoke rerere in case of conflict "stash apply" directly calls a backend merge function which does not automatically invoke rerere. This confuses mergetool when leftover rerere state is left behind from previous merges. Invoke rerere explicitly when we encounter a conflict during stash apply. This turns the test introduced by the previous commit to succeed. Signed-off-by: Phil Hord Signed-off-by: Junio C Hamano --- diff --git a/git-stash.sh b/git-stash.sh index fe4ab28b2e..63d2f59fe5 100755 --- a/git-stash.sh +++ b/git-stash.sh @@ -469,6 +469,7 @@ apply_stash () { else # Merge conflict; keep the exit status from merge-recursive status=$? + git rerere if test -n "$INDEX_OPTION" then gettextln "Index was not unstashed." >&2 diff --git a/t/t7610-mergetool.sh b/t/t7610-mergetool.sh index 725f316861..6fa0c70506 100755 --- a/t/t7610-mergetool.sh +++ b/t/t7610-mergetool.sh @@ -203,7 +203,7 @@ test_expect_success 'mergetool skips resolved paths when rerere is active' ' git reset --hard ' -test_expect_failure 'conflicted stash sets up rerere' ' +test_expect_success 'conflicted stash sets up rerere' ' git config rerere.enabled true && git checkout stash1 && echo "Conflicting stash content" >file11 &&