aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2013-07-12 12:04:04 -0700
committerJunio C Hamano <gitster@pobox.com>2013-07-12 12:04:04 -0700
commite70aee5c86c508af4a92bd02b688b4aa39c58180 (patch)
tree6b86714969391b91945fd82a120744fc5cfe1f9d
parent8a6482227ca31bd582aecbd211b85ff76595d0a7 (diff)
parent7da9800fff189b93b46bb5e8763b75101264d940 (diff)
downloadgit-e70aee5c86c508af4a92bd02b688b4aa39c58180.tar.gz
git-e70aee5c86c508af4a92bd02b688b4aa39c58180.tar.xz
Merge branch 'jk/maint-config-multi-order'
* jk/maint-config-multi-order: git-config(1): clarify precedence of multiple values
-rw-r--r--Documentation/git-config.txt20
1 files changed, 12 insertions, 8 deletions
diff --git a/Documentation/git-config.txt b/Documentation/git-config.txt
index fbad05e46..99dc497b6 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*.