Autogenerated HTML docs for v1.5.2-146-gb75c6
authorJunio C Hamano <junio@hera.kernel.org>
Thu, 31 May 2007 07:38:19 +0000 (07:38 +0000)
committerJunio C Hamano <junio@hera.kernel.org>
Thu, 31 May 2007 07:38:19 +0000 (07:38 +0000)
git-config.html
git-config.txt

index fa978c771f71adfaa8df89e1da63b9bf7b107bc7..ee533dab3f1b7a3ee3905cc8a0ec499ca4b8b2f6 100644 (file)
@@ -294,7 +294,7 @@ If you want to update or unset an option which can occur on multiple
 lines, a POSIX regexp <tt>value_regex</tt> needs to be given.  Only the\r
 existing values that match the regexp are updated or unset.  If\r
 you want to handle the lines that do <strong>not</strong> match the regex, just\r
-prepend a single exclamation mark in front (see EXAMPLES).</p>\r
+prepend a single exclamation mark in front (see also <a href="#EXAMPLES">[EXAMPLES]</a>).</p>\r
 <p>The type specifier can be either <em>--int</em> or <em>--bool</em>, which will make\r
 <em>git-config</em> ensure that the variable(s) are of the given type and\r
 convert the value to the canonical form (simple decimal number for int,\r
@@ -335,7 +335,7 @@ you try to unset/set an option for which multiple lines match, or
 </li>\r
 <li>\r
 <p>\r
-you use --global option without $HOME being properly set.\r
+you use <em>--global</em> option without $HOME being properly set.\r
 </p>\r
 </li>\r
 </ol>\r
@@ -393,17 +393,24 @@ you use --global option without $HOME being properly set.
 </dt>\r
 <dd>\r
 <p>\r
-        Use global ~/.gitconfig file rather than the repository .git/config.\r
+        For writing options: write to global ~/.gitconfig file rather than\r
+        the repository .git/config.\r
 </p>\r
+<p>For reading options: read only from global ~/.gitconfig rather than\r
+from all available files.</p>\r
+<p>See also <a href="#FILES">[FILES]</a>.</p>\r
 </dd>\r
 <dt>\r
 --system\r
 </dt>\r
 <dd>\r
 <p>\r
-        Use system-wide $(prefix)/etc/gitconfig rather than the repository\r
-        .git/config.\r
+        For writing options: write to system-wide $(prefix)/etc/gitconfig\r
+        rather than the repository .git/config.\r
 </p>\r
+<p>For reading options: read only from system-wide $(prefix)/etc/gitconfig\r
+rather than from all available files.</p>\r
+<p>See also <a href="#FILES">[FILES]</a>.</p>\r
 </dd>\r
 <dt>\r
 --remove-section\r
@@ -466,6 +473,53 @@ you use --global option without $HOME being properly set.
 </dd>\r
 </dl>\r
 </div>\r
+<h2><a id="FILES"></a>FILES</h2>\r
+<div class="sectionbody">\r
+<p>There are three files where git-config will search for configuration\r
+options:</p>\r
+<div class="literalblock">\r
+<div class="title">git/config::</div>\r
+<div class="content">\r
+<pre><tt>Repository specific configuration file. (The filename is\r
+of course relative to the repository root, not the working\r
+directory.)</tt></pre>\r
+</div></div>\r
+<dl>\r
+<dt>\r
+~/.gitconfig\r
+</dt>\r
+<dd>\r
+<p>\r
+        User-specific configuration file. Also called "global"\r
+        configuration file.\r
+</p>\r
+</dd>\r
+<dt>\r
+$(prefix)/etc/gitconfig\r
+</dt>\r
+<dd>\r
+<p>\r
+        System-wide configuration file.\r
+</p>\r
+</dd>\r
+</dl>\r
+<p>If no further options are given, all reading options will read all of these\r
+files that are available. If the global or the system-wide configuration\r
+file are not available they will be ignored. If the repository configuration\r
+file is not available or readable, git-config will exit with a non-zero\r
+error code. However, in neither case will an error message be issued.</p>\r
+<p>All writing options will per default write to the repository specific\r
+configuration file. Note that this also affects options like <em>--replace-all</em>\r
+and <em>--unset</em>. <strong>git-config will only ever change one file at a time</strong>.</p>\r
+<p>You can override these rules either by command line options or by environment\r
+variables. The <em>--global</em> and the <em>--system</em> options will limit the file used\r
+to the global or system-wide file respectively. The GIT_CONFIG environment\r
+variable has a similar effect, but you can specify any filename you want.</p>\r
+<p>The GIT_CONFIG_LOCAL environment variable on the other hand only changes\r
+the name used instead of the repository configuration file. The global and\r
+the system-wide configuration files will still be read. (For writing options\r
+this will obviously result in the same behavior as using GIT_CONFIG.)</p>\r
+</div>\r
 <h2>ENVIRONMENT</h2>\r
 <div class="sectionbody">\r
 <dl>\r
@@ -475,7 +529,8 @@ GIT_CONFIG
 <dd>\r
 <p>\r
         Take the configuration from the given file instead of .git/config.\r
-        Using the "--global" option forces this to ~/.gitconfig.\r
+        Using the "--global" option forces this to ~/.gitconfig. Using the\r
+        "--system" option forces this to $(prefix)/etc/gitconfig.\r
 </p>\r
 </dd>\r
 <dt>\r
@@ -483,14 +538,14 @@ GIT_CONFIG_LOCAL
 </dt>\r
 <dd>\r
 <p>\r
-        Currently the same as $GIT_CONFIG; when Git will support global\r
-        configuration files, this will cause it to take the configuration\r
-        from the global configuration file in addition to the given file.\r
+        Take the configuration from the given file instead if .git/config.\r
+        Still read the global and the system-wide configuration files, though.\r
 </p>\r
 </dd>\r
 </dl>\r
+<p>See also <a href="#FILES">[FILES]</a>.</p>\r
 </div>\r
-<h2>EXAMPLE</h2>\r
+<h2><a id="EXAMPLES"></a>EXAMPLES</h2>\r
 <div class="sectionbody">\r
 <p>Given a .git/config like this:</p>\r
 <div class="literalblock">\r
@@ -1702,7 +1757,7 @@ transfer.unpackLimit
 </div>\r
 <div id="footer">\r
 <div id="footer-text">\r
-Last updated 24-May-2007 06:59:45 UTC\r
+Last updated 31-May-2007 07:37:48 UTC\r
 </div>\r
 </div>\r
 </body>\r
index 827a49970d77cc1af431e673323510bb94e0a391..056b14724c4058ce7443264303713bbdc899f04c 100644 (file)
@@ -31,7 +31,7 @@ If you want to update or unset an option which can occur on multiple
 lines, a POSIX regexp `value_regex` needs to be given.  Only the
 existing values that match the regexp are updated or unset.  If
 you want to handle the lines that do *not* match the regex, just
-prepend a single exclamation mark in front (see EXAMPLES).
+prepend a single exclamation mark in front (see also <<EXAMPLES>>).
 
 The type specifier can be either '--int' or '--bool', which will make
 'git-config' ensure that the variable(s) are of the given type and
@@ -48,7 +48,7 @@ This command will fail if:
 . the section or key is invalid,
 . you try to unset an option which does not exist,
 . you try to unset/set an option for which multiple lines match, or
-. you use --global option without $HOME being properly set.
+. you use '--global' option without $HOME being properly set.
 
 
 OPTIONS
@@ -75,11 +75,22 @@ OPTIONS
        Like --get-all, but interprets the name as a regular expression.
 
 --global::
-       Use global ~/.gitconfig file rather than the repository .git/config.
+       For writing options: write to global ~/.gitconfig file rather than
+       the repository .git/config.
++
+For reading options: read only from global ~/.gitconfig rather than
+from all available files.
++
+See also <<FILES>>.
 
 --system::
-       Use system-wide $(prefix)/etc/gitconfig rather than the repository
-       .git/config.
+       For writing options: write to system-wide $(prefix)/etc/gitconfig
+       rather than the repository .git/config.
++
+For reading options: read only from system-wide $(prefix)/etc/gitconfig
+rather than from all available files.
++
+See also <<FILES>>.
 
 --remove-section::
        Remove the given section from the configuration file.
@@ -106,21 +117,64 @@ OPTIONS
        by 1024, 1048576, or 1073741824 prior to output.
 
 
+[[FILES]]
+FILES
+-----
+
+There are three files where git-config will search for configuration
+options:
+
+.git/config::
+       Repository specific configuration file. (The filename is
+       of course relative to the repository root, not the working
+       directory.)
+
+~/.gitconfig::
+       User-specific configuration file. Also called "global"
+       configuration file.
+
+$(prefix)/etc/gitconfig::
+       System-wide 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
+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.
+
+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*.
+
+You can override these rules either by command line options or by environment
+variables. The '--global' and the '--system' options will limit the file used
+to the global or system-wide file respectively. The GIT_CONFIG environment
+variable has a similar effect, but you can specify any filename you want.
+
+The GIT_CONFIG_LOCAL environment variable on the other hand only changes
+the name used instead of the repository configuration file. The global and
+the system-wide configuration files will still be read. (For writing options
+this will obviously result in the same behavior as using GIT_CONFIG.)
+
+
 ENVIRONMENT
 -----------
 
 GIT_CONFIG::
        Take the configuration from the given file instead of .git/config.
-       Using the "--global" option forces this to ~/.gitconfig.
+       Using the "--global" option forces this to ~/.gitconfig. Using the
+       "--system" option forces this to $(prefix)/etc/gitconfig.
 
 GIT_CONFIG_LOCAL::
-       Currently the same as $GIT_CONFIG; when Git will support global
-       configuration files, this will cause it to take the configuration
-       from the global configuration file in addition to the given file.
+       Take the configuration from the given file instead if .git/config.
+       Still read the global and the system-wide configuration files, though.
 
+See also <<FILES>>.
 
-EXAMPLE
--------
+
+[[EXAMPLES]]
+EXAMPLES
+--------
 
 Given a .git/config like this: