Re: Overly aggressive .gitignore file?

From: Willy Tarreau
Date: Tue Jul 04 2023 - 17:15:33 EST


On Tue, Jul 04, 2023 at 12:49:01PM -0700, Linus Torvalds wrote:
> So this keeps happening to me - I go to apply a patch I just
> downloaded with 'b4', and I do my regular
>
> git am -s --whitespace 2023<tab>
>
> and the dang thing doesn't autocomplete.,
>
> The reason it doesn't auto-complete ends up being that my kernel tree
> contains some other random stale mbx file from the _previous_ time I
> did that, because they effectively get hidden from "git status" etc by
> our .gitignore file.
>
> So then those stale files end up staying around much too long and not
> showing up on my radar even though they are just old garbage by the
> time I have actually applied them.
>
> And I always use auto-complete, because those filenames that 'b4'
> generate are ridiculously long (for good reason).
>
> And the auto-complete always fails, because b4 just uses a common
> prefix pattern too (again, for a perfectly good reason - I'm not
> complaining about b4 here).
>
> This has been a slight annoyance for a while, but the last time it
> happened just a moment ago when I applied David Howells' afs patch
> (commit 03275585cabd: "afs: Fix accidental truncation when storing
> data" - not that the particular commit matters, I'm just pointing out
> how it just happened _again_).
>
> So I'm really inclined to just revert the commit that added this
> pattern: 534066a983df (".gitignore: ignore *.cover and *.mbx"). It's
> actively detrimental to my workflow.

I don't understand why your completion on "git am" should rely on
*tracked* files. From a workflow perspective that makes no sense,
as by definition, git am will consume only *untracked* files. Are
you sure there isn't something wrong elsewhere in your completion
rules, that would make your "git am" complete only with tracked
files ? Most likely it should use a rule very similar to what
"git add" uses.

Just my two cents,
Willy