git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] git-config: update doc for --get with multiple values

From
Junio C Hamano <gitster@pobox.com>
Date
Jul 7, 2013, 17:31 UTC
Message-ID
<7v38rq5lad.fsf@alter.siamese.dyndns.org>
In-Reply-To
<20130707095026.GR9161@serenity.lan>
John Keeping <john@keeping.me.uk> writes:
Show 9 quoted lines
>> I wondered if we should explain the significance of "last" a bit
>> more (like "this results in the value from the most specific
>> configuration file to be used, the ones in $GIT_DIR/config
>> overriding what is in $HOME/.gitconfig"), but I do not have a strong
>> opinion either way.  Let's queue this for 'maint' for now.
>
> I don't think that change belongs here.  How about doing something like
> this in the FILES section (the first two hunks are just reordering the
> existing list, only the last hunk changes the content):
Sounds like a good change to me ;-).
Show 46 quoted lines
> -- >8 --
> diff --git a/Documentation/git-config.txt b/Documentation/git-config.txt
> index fbad05e..99dc497 100644
> --- a/Documentation/git-config.txt
> +++ b/Documentation/git-config.txt
> @@ -206,12 +206,8 @@ FILES
>  If not set explicitly with '--file', there are four files where
>  'git config' will search for configuration options:
>  
> -$GIT_DIR/config::
> -	Repository specific configuration file.
> -
> -~/.gitconfig::
> -	User-specific configuration file. Also called "global"
> -	configuration file.
> +$(prefix)/etc/gitconfig::
> +	System-wide configuration file.
>  
>  $XDG_CONFIG_HOME/git/config::
>  	Second user-specific configuration file. If $XDG_CONFIG_HOME is not set
> @@ -221,8 +217,12 @@ $XDG_CONFIG_HOME/git/config::
>  	you sometimes use older versions of Git, as support for this
>  	file was added fairly recently.
>  
> -$(prefix)/etc/gitconfig::
> -	System-wide configuration file.
> +~/.gitconfig::
> +	User-specific configuration file. Also called "global"
> +	configuration file.
> +
> +$GIT_DIR/config::
> +	Repository specific configuration file.
>  
>  If no further options are given, all reading options will read all of these
>  files that are available. If the global or the system-wide configuration
> @@ -230,6 +230,10 @@ file are not available they will be ignored. If the repository configuration
>  file is not available or readable, 'git config' will exit with a non-zero
>  error code. However, in neither case will an error message be issued.
>  
> +The files are read in the order given above, with last value found taking
> +precedence over values read earlier.  When multiple values are taken then all
> +values of a key from all files will be used.
> +
>  All writing options will per default write to the repository specific
>  configuration file. Note that this also affects options like '--replace-all'
>  and '--unset'. *'git config' will only ever change one file at a time*.
Previous: John KeepingNext: John Keeping
Message 5 of 7 in “git-config: update doc for --get with multiple values”
  1. git-config: update doc for --get with multiple valuesJohn Keeping, Jul 3, 2013
  2. Jeff KingJul 3, 2013
  3. Junio C HamanoJul 3, 2013
  4. John KeepingJul 7, 2013
  5. Junio C HamanoJul 7, 2013
  6. git-config(1): clarify precedence of multiple valuesJohn Keeping, Jul 7, 2013
  7. Jeff KingJul 7, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.