Nguyễn Thái Ngọc Duy  <pclo...@gmail.com> writes:

> Among the "in progress" commands, only git-am and git-merge do not
> support --quit. Support --quit in git-am too.

That's a strange way to phrase it, when the number of commands that
know and do not know it are about the same.

>  --abort::
>       Restore the original branch and abort the patching operation.
>  
> +--quit::
> +     Abort the patching operation but keep HEAD and the index
> +     untouched.

OK, I see from the documentation of rebase that the above pair is
consistent with how --abort/--quit are done over there.

> @@ -2359,6 +2363,10 @@ int cmd_am(int argc, const char **argv, const char 
> *prefix)
>       case RESUME_ABORT:
>               am_abort(&state);
>               break;
> +     case RESUME_QUIT:
> +             am_rerere_clear();
> +             am_destroy(&state);
> +             break;

The internal implementation detail of am_abort() is leaking out
here, by saying "rerere-clear" is the only special thing other than
recovering the HEAD and working tree state when abort happens.  It
makes readers wonder if am_rerere_clear() should become part of
am_destroy().  I dunno.

Reply via email to