Subject: Re: [PATCH v2] stash: honor --no-overwrite-ignore with --all

From: "Kristoffer Haugsbakk" <[email-masked]>
Date: Mon, 02 Feb 2026 17:48:07 +0100

On Mon, Feb 2, 2026, at 17:22, Pushkar Singh wrote:
> Teach stash push/save to avoid -a cleanup when --no-overwrite-ignore
> is given by downgrading INCLUDE_ALL_FILES to include-untracked.
>
> This fixes ignored files being incorrectly removed despite
> --no-overwrite-ignore, and removes the stash FIXME by plumbing
> overwrite_ignore into unpack_trees().
>
> Add regression tests covering both overwrite and no-overwrite cases.
>
> Changes since v1:
> - Use OPT_BOOL correctly for overwrite-ignore.
> - Fix stash -a cleanup when --no-overwrite-ignore is given by downgrading
>   INCLUDE_ALL_FILES to include-untracked.
> - Add regression test for --overwrite-ignore.
> - Adjust no-overwrite-ignore test to explicitly use -a.
> - Add Signed-off-by.

These patch version changes are supposed to go after the `---` (after
the `Signed-off-by`). I guess people who are comfortable editing patches
write them manually in that place (unless something like b4 or
gigitgadget does it for them). I prefer to use `--notes` and let
git-format-patch(1) inject it for me. :)

>
> Signed-off-by: Pushkar Singh <[email-masked]>
> ---
>  builtin/stash.c                    | 14 ++++++++------
>  t/t3905-stash-include-untracked.sh | 16 ++++++++++++++--
>  2 files changed, 22 insertions(+), 8 deletions(-)
>[snip]