From: Eric Wong Date: Wed, 21 Apr 2010 16:54:52 GMT Subject: Re: [PATCH/RFC 0/2] git-svn: Allow certain refs to be ignored Message-ID: <20100421165451.GA14004@dcvr.yhbt.net> In-Reply-To: Michael Olson wrote: > On Tue, Apr 20, 2010 at 4:58 PM, Junio C Hamano wrote: > > Michael Olson writes: > > > >> [svn-remote "svn"] > >>        url = https://svn.my.org/svn/root > >> ... > >>        ignore-refs = ^refs/remotes/(tags/)?old/myorg > > > > Traditionally configuration variable names are spelled camelCase without > > dashes.  You probably would want to be consistent. > > I was looking at the existing syntax for "ignore-paths", which uses > dashes. Should that be changed as well? Yes, I missed that the first time around :x I suppose that should be changed to work both ways. > > Also "refs" and any pathname-like things are traditionally matched using > > globs and not regexes.  It is Ok to deviate if you have a strong reason to > > (and I suspect it would make it easier to write "exclude" patterns like > > the above example to allow a regex here), but that needs to be prominently > > documented (e.g. "Unlike any other ref-matching configuration variable, > > this alone uses regex, not glob") to avoid end user confusion. > > ignore-paths also uses a regex. I'm concerned that using globs will > not be expressive enough to represent a regex like (a combination of > the 2 use cases I posted initially): I also missed that (I never used that feature :x) > ^refs/remotes/((tags/)?old/myorg|old/bad_branch|old/unlabeled[^/]*|tags/(old/bad_tag|releases/another_tag))$ I wonder if both would be better as a series of globs would be easier to read (maybe more verbose to write): ignoreRefs = refs/remotes/tags/old/myorg ignoreRefs = refs/remotes/old/myorg ignoreRefs = refs/remotes/old/unlabeled/* But I suppose the regexp route is fine. I'll ack and push them out with Sam's Ack on 2/2 -- Eric Wong