Subject: Re: 'git stash push -- {dir}' puts files in stash that are outside of {dir}

From: Junio C Hamano <[email-masked]>
Date: Wed, 26 Jul 2023 10:29:09 -0700

Yuri <[email-masked]> writes:

> I am in the FreeBSD ports repository.
>
> I run this command:
>
> $ git stash push -m "gh-print-tuple" -- Mk
>
> But then 'git show' shows that the top stash entry also has other files:
>
> $ git stash show -p stash@{0} | grep diff

Not offering a solution, as a quick test or two in my environment do
not reproduce this problem [*].  But instead of the above command,
which will show matches on any line that has "diff" in the "-p"
output, perhaps

    $ git stash show --stat

is easier to see?

Are there configuration variables set to affect the behaviour of the
"git stash" command in your environment that I do not have (I have
nothing in "git config -l | grep stash" output), which may be
affecting why it does not reproduce for me?

> Why do files that are not under Mk get into stash?

[Footnote]

* Admittedly I didn't recall we had pathspec support to "git stash
  push" so consider me no longer an expert in this area ;-).