Re: [PATCH v2] config: reject invalid VAR in 'git -c VAR=VAL command'
From: Jeff King <hidden>
Date: 2017-02-24 04:22:34
On Thu, Feb 23, 2017 at 08:17:44PM -0800, Junio C Hamano wrote:
quoted
Hmm. I suspect one cannot do: git -c 'section.subsection with an = in it.key=foo' ... Definitely not a new problem, nor something that should block your patch. But if we want to fix it, I suspect the problem will ultimately involve parsing left-to-right to get the key first, then confirming it has an =, and then the value.Backtracking will not fundamentally "fix" parsing of a.b=c=.d between twhse two [a "b="] c = ".d" [a] b = "c=.d" unfortunately, I think. I do not think it is worth doing the "best effort" with erroring out when ambiguous, because there is no way for the end user to disambiguate, unless we introduce a different syntax, at which point we cannot use config_parse_key() anymore.
Ah, yeah, you're right. I thought the problem was just that the "split" was too naive, but it really is that the whole syntax is badly specified. I guess "git config --list" suffers from the same problem. You can get around it there with "-z", but that probably would not be very pleasant here. :) Probably not worth worrying too much about if nobody is complaining. -Peff