Variable names must start with an alphabetic character, regexp config key matching has its limits. Signed-off-by: Libor Pechacek <lpechacek@xxxxxxx> Cc: Jeff King <peff@xxxxxxxx> --- Documentation/config.txt | 12 +++++++----- Documentation/git-config.txt | 9 +++++++-- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/Documentation/config.txt b/Documentation/config.txt index ff7c225..928ceda 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -12,8 +12,9 @@ The configuration variables are used by both the git plumbing and the porcelains. The variables are divided into sections, wherein the fully qualified variable name of the variable itself is the last dot-separated segment and the section name is everything before the last -dot. The variable names are case-insensitive and only alphanumeric -characters are allowed. Some variables may appear multiple times. +dot. The variable names are case-insensitive, allow only alphanumeric +characters and '-', and must start with an alphabetic character. Some +variables may appear multiple times. Syntax ~~~~~~ @@ -53,9 +54,10 @@ All the other lines (and the remainder of the line after the section header) are recognized as setting variables, in the form 'name = value'. If there is no equal sign on the line, the entire line is taken as 'name' and the variable is recognized as boolean "true". -The variable names are case-insensitive and only alphanumeric -characters and `-` are allowed. There can be more than one value -for a given variable; we say then that variable is multivalued. +The variable names are case-insensitive, allow only alphanumeric characters +and `-`, and must start with an alphabetic character. There can be more +than one value for a given variable; we say then that variable is +multivalued. Leading and trailing whitespace in a variable value is discarded. Internal whitespace within a variable value is retained verbatim. diff --git a/Documentation/git-config.txt b/Documentation/git-config.txt index 543dd64..31f4658 100644 --- a/Documentation/git-config.txt +++ b/Documentation/git-config.txt @@ -83,8 +83,13 @@ OPTIONS is not exactly one. --get-regexp:: - Like --get-all, but interprets the name as a regular expression. - Also outputs the key names. + Like --get-all, but interprets the name as a regular expression and + writes out the key names. Regular expression matching is currently + case-sensitive and done against a canonicalized version of the key + in which section and variable names are lowercased, but subsection + names are not. Regular expressions are partially lower-cased + before matching (everything before the first dot and after the last + dot), which makes things like "Core.*' work. --global:: For writing options: write to global ~/.gitconfig file rather than -- 1.7.4.rc2.20.gdb1b81 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html