Merge branch 'en/merge-unstash-only-on-clean-merge' into maint

The auto-stashed local changes created by "git merge --autostash"
was mixed into a conflicted state left in the working tree, which
has been corrected.

* en/merge-unstash-only-on-clean-merge:
  merge: only apply autostash when appropriate
This commit is contained in:
Junio C Hamano
2022-09-13 12:21:11 -07:00
2 changed files with 13 additions and 1 deletions

View File

@ -493,7 +493,8 @@ static void finish(struct commit *head_commit,
/* Run a post-merge hook */
run_hooks_l("post-merge", squash ? "1" : "0", NULL);
apply_autostash(git_path_merge_autostash(the_repository));
if (new_head)
apply_autostash(git_path_merge_autostash(the_repository));
strbuf_release(&reflog_message);
}
@ -1756,6 +1757,8 @@ int cmd_merge(int argc, const char **argv, const char *prefix)
"stopped before committing as requested\n"));
else
ret = suggest_conflicts();
if (autostash)
printf(_("When finished, apply stashed changes with `git stash pop`\n"));
done:
if (!automerge_was_ok) {