From: Junio C Hamano Date: Sat, 31 Aug 2013 00:29:44 GMT Subject: Re: [PATCH] revision: introduce --exclude= to tame wildcards Message-ID: In-Reply-To: Duy Nguyen writes: > On Sat, Aug 31, 2013 at 6:55 AM, Junio C Hamano wrote: >> +static int ref_excluded(struct rev_info *revs, const char *path) >> +{ >> + struct string_list_item *item; >> + >> + if (!revs->ref_excludes) >> + return 0; >> + for_each_string_list_item(item, revs->ref_excludes) { >> + if (!fnmatch(item->string, path, 0)) >> + return 1; >> + } >> + return 0; >> +} > > If you pursue this, please use wildmatch instead so it supports "foo/**". The thought crossed my mind and I think we should match what the existing --glob= option does. A cursory look in refs.c::filter_refs() used by refs.c::for_each_glob_ref_in() tells me that we are using fnmatch without FNM_PATHNAME, so that is what the above part does.