git-config: document accidental multi-line setting in deprecated syntax

The bug was noticed when writing the previous patch; a fix for this bug is not easy though: If we choose to ignore the case of the subsection (and revert most of the code of the previous patch, just keeping s/strncasecmp/strcmp/), then we'd introduce new sections using the new syntax, such that -------- [section.subsection] key = value1 -------- git config section.Subsection.key value2 would result in -------- [section.subsection] key = value1 [section.Subsection] key = value2 -------- which is even more confusing. A proper fix would replace the first occurrence of 'key'. As the syntax is deprecated, let's prefer to not spend time on fixing the behavior and just document it instead. Signed-off-by: Stefan Beller <sbeller@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Stefan Beller committed Aug 8, 2018 at 12:50 UTC bff7df7a87a775d931dc40e6f7058966f53f1fc8
1 file changed +21
Documentation/git-config.txt
+21
@@ -430,6 +430,27 @@ http.sslverify false
430
431 include::config.txt[]
432
433 +BUGS
434 +----
435 +When using the deprecated `[section.subsection]` syntax, changing a value
436 +will result in adding a multi-line key instead of a change, if the subsection
437 +is given with at least one uppercase character. For example when the config
438 +looks like
439 +
440 +--------
441 + [section.subsection]
442 + key = value1
443 +--------
444 +
445 +and running `git config section.Subsection.key value2` will result in
446 +
447 +--------
448 + [section.subsection]
449 + key = value1
450 + key = value2
451 +--------
452 +
453 +
454 GIT
455 ---
456 Part of the linkgit:git[1] suite