summaryrefslogtreecommitdiff
path: root/Documentation/git-config.txt
diff options
context:
space:
mode:
authorStefan Beller <sbeller@google.com>2018-08-08 19:50:20 (GMT)
committerJunio C Hamano <gitster@pobox.com>2018-08-08 20:26:48 (GMT)
commitbff7df7a87a775d931dc40e6f7058966f53f1fc8 (patch)
treecdb064a784e9a0effc2b59ac83123e8bdb2a9a1d /Documentation/git-config.txt
parent2d84f13dcb67762c2506e71232556e196f32600b (diff)
downloadgit-bff7df7a87a775d931dc40e6f7058966f53f1fc8.zip
git-bff7df7a87a775d931dc40e6f7058966f53f1fc8.tar.gz
git-bff7df7a87a775d931dc40e6f7058966f53f1fc8.tar.bz2
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>
Diffstat (limited to 'Documentation/git-config.txt')
-rw-r--r--Documentation/git-config.txt21
1 files changed, 21 insertions, 0 deletions
diff --git a/Documentation/git-config.txt b/Documentation/git-config.txt
index 14da5fc..1ac2eab 100644
--- a/Documentation/git-config.txt
+++ b/Documentation/git-config.txt
@@ -430,6 +430,27 @@ http.sslverify false
include::config.txt[]
+BUGS
+----
+When using the deprecated `[section.subsection]` syntax, changing a value
+will result in adding a multi-line key instead of a change, if the subsection
+is given with at least one uppercase character. For example when the config
+looks like
+
+--------
+ [section.subsection]
+ key = value1
+--------
+
+and running `git config section.Subsection.key value2` will result in
+
+--------
+ [section.subsection]
+ key = value1
+ key = value2
+--------
+
+
GIT
---
Part of the linkgit:git[1] suite