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 <hordp@cisco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
79dc2d0b02
commit
743bf6d8b0
@ -469,6 +469,7 @@ apply_stash () {
|
|||||||
else
|
else
|
||||||
# Merge conflict; keep the exit status from merge-recursive
|
# Merge conflict; keep the exit status from merge-recursive
|
||||||
status=$?
|
status=$?
|
||||||
|
git rerere
|
||||||
if test -n "$INDEX_OPTION"
|
if test -n "$INDEX_OPTION"
|
||||||
then
|
then
|
||||||
gettextln "Index was not unstashed." >&2
|
gettextln "Index was not unstashed." >&2
|
||||||
|
@ -203,7 +203,7 @@ test_expect_success 'mergetool skips resolved paths when rerere is active' '
|
|||||||
git reset --hard
|
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 config rerere.enabled true &&
|
||||||
git checkout stash1 &&
|
git checkout stash1 &&
|
||||||
echo "Conflicting stash content" >file11 &&
|
echo "Conflicting stash content" >file11 &&
|
||||||
|
Loading…
Reference in New Issue
Block a user