From: Junio C Hamano Date: Mon, 16 May 2016 21:18:32 GMT Subject: Re: [RFC PATCH 0/4] pathspec labels [WAS: submodule groups] Message-ID: In-Reply-To: Stefan Beller writes: > This is another case for using ':' instead of '='. > So I think ':' is better for this future enhancement. > > Also this future enhancement may ask for > > git ls-files ":(attr:label=foo)" > > or > > git ls-files ":(attr:-label)" > > so the user can circumvent the warn and ignore strategy. :( That is exactly what we want, I would say, if we want to accept "arbitrary set of attributes with their states". The "warn and ignore" comes only from "with '(:label=X Y Z)', we inspect attributes X, Y and Z and insist them to be set to true; it is a configuration error to set the label to anything but a string", and accepting "arbitrary set of attributes with their states" makes it moot (as I said earlier in $gmane/294776). So are we leaning towards ":(attr:)", where is one of var=value var -var !var now? It makes the pathspec magic parser a bit more complex (and I am not sure if we have to worry too much about quoting "value" part to allow arbitrary sequence of bytes), though.