From: Jan Engelhardt Date: Tue, 10 Jan 2012 05:42:11 GMT Subject: Re: [PATCH] gitignore: warn about pointless syntax Message-ID: In-Reply-To: <20120109223358.GA9902@sigill.intra.peff.net> On Monday 2012-01-09 23:33, Jeff King wrote: >On Mon, Jan 09, 2012 at 11:43:21AM -0800, Junio C Hamano wrote: > >>>>+static inline void check_bogus_wildcard(const char *file, const char *p) >>>>+{ >>>>+ if (strstr(p, "**") == NULL) >>>>+ return; >>>>+ warning(_("Pattern \"%s\" from file \"%s\": Double asterisk does not " >>>>+ "have a special meaning and is interpreted just like a single " >>>>+ "asterisk.\n"), file, p); > >You only have to implement proper backslash decoding, so I think it is >not as hard as reimplementing fnmatch: >[...] > >That being said, if this is such a commonly-requested feature Was it actually requested, or did you mean "commonly attempted use"? As I see it, foo/**/*.o for example is equal to placing "*.o" in foo/.gitignore, so the feature is already implemented, just not through the syntax people falsely assume it is. And that is the reason for wanting to output a warning. If it was me, I'd even make it use error(), because that is the only way to educate people (and it works), but alas, some on the list might consider that too harsh.