Thread (94 messages) 94 messages, 6 authors, 2018-05-08

Re: [PATCH 0/9] Assorted fixes for `git config` (including the "empty sections" bug)

From: Johannes Schindelin <hidden>
Date: 2018-03-30 12:14:45

Hi Stefan,

On Thu, 29 Mar 2018, Stefan Beller wrote:
On Thu, Mar 29, 2018 at 8:18 AM, Johannes Schindelin
[off-list ref] wrote:
quoted
So what is the argument against this extra care to detect comments? Well, if
you have something like this:

        [section]
                ; Here we comment about the variable called snarf
                snarf = froop

and we run `git config --unset section.snarf`, we end up with this config:

        [section]
                ; Here we comment about the variable called snarf

which obviously does not make sense. However, that is already established
behavior for quite a few years, and I do not even try to think of a way how
this could be solved.
By commenting out the key/value pair instead of deleting it.
It's called --unset, not --delete ;)
That would open the door to new bug reports when a user starts with this
concocted config:

	[section]
		# This is a comment about the `key` setting
		key = value

and then does this:

	git config --unset section.key
	git config section.key value
	git config --unset section.key
	git config section.key value
	git config --unset section.key
	git config section.key value

and then ends up with a config like this:

	[section]
		# This is a comment about the `key` setting
		;key = value
		;key = value
		;key = value
		key = value

And note that the comment might be about `value` instead, so reusing a
commented-out `key` setting won't fly, either.

I *did* give this problem a couple of minutes of thought before writing my
assessment that is quoted above ;-)

Ciao,
Dscho
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help