Autogenerated HTML docs for v1.4.0-rc1-g99b41
[git.git] / git-repo-config.html
index d8ffaa2..e306688 100644 (file)
@@ -266,7 +266,7 @@ git-repo-config(1) Manual Page
 <h2>NAME</h2>\r
 <div class="sectionbody">\r
 <p>git-repo-config -\r
-   Get and set options in .git/config.\r
+   Get and set options in .git/config\r
 </p>\r
 </div>\r
 </div>\r
@@ -278,32 +278,34 @@ git-repo-config(1) Manual Page
 <em>git-repo-config</em> [type] --get name [value_regex]\r
 <em>git-repo-config</em> [type] --get-all name [value_regex]\r
 <em>git-repo-config</em> [type] --unset name [value_regex]\r
-<em>git-repo-config</em> [type] --unset-all name [value_regex]</div></div>\r
+<em>git-repo-config</em> [type] --unset-all name [value_regex]\r
+<em>git-repo-config</em> -l | --list</div></div>\r
 </div>\r
 <h2>DESCRIPTION</h2>\r
 <div class="sectionbody">\r
 <p>You can query/set/replace/unset options with this command. The name is\r
 actually the section and the key separated by a dot, and the value will be\r
 escaped.</p>\r
-<p>If you want to set/unset an option which can occur on multiple lines, you\r
-should provide a POSIX regex for the value. If you want to handle the lines\r
-<strong>not</strong> matching the regex, just prepend a single exclamation mark in front\r
-(see EXAMPLES).</p>\r
+<p>If you want to set/unset an option which can occur on multiple\r
+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
 <p>The type specifier can be either <em>--int</em> or <em>--bool</em>, which will make\r
 <em>git-repo-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
 a "true" or "false" string for bool). If no type specifier is passed,\r
 no checks or transformations are performed on the value.</p>\r
-<p>This command will fail if</p>\r
+<p>This command will fail if:</p>\r
 <ol>\r
 <li>\r
 <p>\r
-.git/config is invalid,\r
+The .git/config file is invalid,\r
 </p>\r
 </li>\r
 <li>\r
 <p>\r
-.git/config can not be written to,\r
+Can not write to .git/config,\r
 </p>\r
 </li>\r
 <li>\r
@@ -336,8 +338,8 @@ you try to unset/set an option for which multiple lines match.
 </dt>\r
 <dd>\r
 <p>\r
-        Default behaviour is to replace at most one line. This replaces\r
-        all lines matching the key (and optionally the value_regex)\r
+        Default behavior is to replace at most one line. This replaces\r
+        all lines matching the key (and optionally the value_regex).\r
 </p>\r
 </dd>\r
 <dt>\r
@@ -359,6 +361,14 @@ you try to unset/set an option for which multiple lines match.
 </p>\r
 </dd>\r
 <dt>\r
+--get-regexp\r
+</dt>\r
+<dd>\r
+<p>\r
+        Like --get-all, but interprets the name as a regular expression.\r
+</p>\r
+</dd>\r
+<dt>\r
 --unset\r
 </dt>\r
 <dd>\r
@@ -374,6 +384,14 @@ you try to unset/set an option for which multiple lines match.
         Remove all matching lines from .git/config.\r
 </p>\r
 </dd>\r
+<dt>\r
+-l, --list\r
+</dt>\r
+<dd>\r
+<p>\r
+        List all variables set in .git/config.\r
+</p>\r
+</dd>\r
 </dl>\r
 </div>\r
 <h2>EXAMPLE</h2>\r
@@ -404,11 +422,11 @@ you try to unset/set an option for which multiple lines match.
 <div class="literalblock">\r
 <div class="content">\r
 <pre><tt>; Proxy settings\r
-[proxy]\r
-        command="ssh" for "ssh://kernel.org/"\r
-        command="proxy-command" for kernel.org\r
-        command="myprotocol-command" for "my://"\r
-        command=default-proxy ; for all the rest</tt></pre>\r
+[core]\r
+        gitproxy="ssh" for "ssh://kernel.org/"\r
+        gitproxy="proxy-command" for kernel.org\r
+        gitproxy="myprotocol-command" for "my://"\r
+        gitproxy=default-proxy ; for all the rest</tt></pre>\r
 </div></div>\r
 <p>you can set the filemode to true with</p>\r
 <div class="listingblock">\r
@@ -420,7 +438,7 @@ to what URL they apply. Here is how to change the entry for kernel.org
 to "ssh".</p>\r
 <div class="listingblock">\r
 <div class="content">\r
-<pre><tt>% git repo-config proxy.command '"ssh" for kernel.org' 'for kernel.org$'</tt></pre>\r
+<pre><tt>% git repo-config core.gitproxy '"ssh" for kernel.org' 'for kernel.org$'</tt></pre>\r
 </div></div>\r
 <p>This makes sure that only the key/value pair for kernel.org is replaced.</p>\r
 <p>To delete the entry for renames, do</p>\r
@@ -428,7 +446,7 @@ to "ssh".</p>
 <div class="content">\r
 <pre><tt>% git repo-config --unset diff.renames</tt></pre>\r
 </div></div>\r
-<p>If you want to delete an entry for a multivar (like proxy.command above),\r
+<p>If you want to delete an entry for a multivar (like core.gitproxy above),\r
 you have to provide a regex matching the value of exactly one line.</p>\r
 <p>To query the value for a given key, do</p>\r
 <div class="listingblock">\r
@@ -443,24 +461,24 @@ you have to provide a regex matching the value of exactly one line.</p>
 <p>or, to query a multivar:</p>\r
 <div class="listingblock">\r
 <div class="content">\r
-<pre><tt>% git repo-config --get proxy.command "for kernel.org$"</tt></pre>\r
+<pre><tt>% git repo-config --get core.gitproxy "for kernel.org$"</tt></pre>\r
 </div></div>\r
 <p>If you want to know all the values for a multivar, do:</p>\r
 <div class="listingblock">\r
 <div class="content">\r
-<pre><tt>% git repo-config --get-all proxy.command</tt></pre>\r
+<pre><tt>% git repo-config --get-all core.gitproxy</tt></pre>\r
 </div></div>\r
-<p>If you like to live dangerous, you can replace <strong>all</strong> proxy.commands by a\r
+<p>If you like to live dangerous, you can replace <strong>all</strong> core.gitproxy by a\r
 new one with</p>\r
 <div class="listingblock">\r
 <div class="content">\r
-<pre><tt>% git repo-config --replace-all proxy.command ssh</tt></pre>\r
+<pre><tt>% git repo-config --replace-all core.gitproxy ssh</tt></pre>\r
 </div></div>\r
 <p>However, if you really only want to replace the line for the default proxy,\r
 i.e. the one without a "for &#8230;" postfix, do something like this:</p>\r
 <div class="listingblock">\r
 <div class="content">\r
-<pre><tt>% git repo-config proxy.command ssh '! for '</tt></pre>\r
+<pre><tt>% git repo-config core.gitproxy ssh '! for '</tt></pre>\r
 </div></div>\r
 <p>To actually match only values with an exclamation mark, you have to</p>\r
 <div class="listingblock">\r
@@ -468,13 +486,367 @@ i.e. the one without a "for &#8230;" postfix, do something like this:</p>
 <pre><tt>% git repo-config section.key value '[!]'</tt></pre>\r
 </div></div>\r
 </div>\r
+<h2>CONFIGURATION FILE</h2>\r
+<div class="sectionbody">\r
+<p>The git configuration file contains a number of variables that affect\r
+the git command's behavior. They can be used by both the git plumbing\r
+and the porcelains. The variables are divided into sections, where\r
+in the fully qualified variable name the variable itself is the last\r
+dot-separated segment and the section name is everything before the last\r
+dot. The variable names are case-insensitive and only alphanumeric\r
+characters are allowed. Some variables may appear multiple times.</p>\r
+<p>The syntax is fairly flexible and permissive; whitespaces are mostly\r
+ignored. The <em>#</em> and <em>;</em> characters begin comments to the end of line,\r
+blank lines are ignored, lines containing strings enclosed in square\r
+brackets start sections and all the other lines are recognized\r
+as setting variables, in the form <em>name = value</em>. If there is no equal\r
+sign on the line, the entire line is taken as <em>name</em> and the variable\r
+is recognized as boolean "true". String values may be entirely or partially\r
+enclosed in double quotes; some variables may require special value format.</p>\r
+<h3>Example</h3>\r
+<div class="literalblock">\r
+<div class="content">\r
+<pre><tt># Core variables\r
+[core]\r
+        ; Don't trust file modes\r
+        filemode = false</tt></pre>\r
+</div></div>\r
+<div class="literalblock">\r
+<div class="content">\r
+<pre><tt># Our diff algorithm\r
+[diff]\r
+        external = "/usr/local/bin/gnu-diff -u"\r
+        renames = true</tt></pre>\r
+</div></div>\r
+<h3>Variables</h3>\r
+<p>Note that this list is non-comprehensive and not necessarily complete.\r
+For command-specific variables, you will find a more detailed description\r
+in the appropriate manual page. You will find a description of non-core\r
+porcelain configuration variables in the respective porcelain documentation.</p>\r
+<dl>\r
+<dt>\r
+core.fileMode\r
+</dt>\r
+<dd>\r
+<p>\r
+        If false, the executable bit differences between the index and\r
+        the working copy are ignored; useful on broken filesystems like FAT.\r
+        See <a href="git-update-index.html">git-update-index(1)</a>. True by default.\r
+</p>\r
+</dd>\r
+<dt>\r
+core.gitProxy\r
+</dt>\r
+<dd>\r
+<p>\r
+        A "proxy command" to execute (as <em>command host port</em>) instead\r
+        of establishing direct connection to the remote server when\r
+        using the git protocol for fetching. If the variable value is\r
+        in the "COMMAND for DOMAIN" format, the command is applied only\r
+        on hostnames ending with the specified domain string. This variable\r
+        may be set multiple times and is matched in the given order;\r
+        the first match wins.\r
+</p>\r
+<p>Can be overridden by the <em>GIT_PROXY_COMMAND</em> environment variable\r
+(which always applies universally, without the special "for"\r
+handling).</p>\r
+</dd>\r
+<dt>\r
+core.ignoreStat\r
+</dt>\r
+<dd>\r
+<p>\r
+        The working copy files are assumed to stay unchanged until you\r
+        mark them otherwise manually - Git will not detect the file changes\r
+        by lstat() calls. This is useful on systems where those are very\r
+        slow, such as Microsoft Windows.  See <a href="git-update-index.html">git-update-index(1)</a>.\r
+        False by default.\r
+</p>\r
+</dd>\r
+<dt>\r
+core.preferSymlinkRefs\r
+</dt>\r
+<dd>\r
+<p>\r
+        Instead of the default "symref" format for HEAD\r
+        and other symbolic reference files, use symbolic links.\r
+        This is sometimes needed to work with old scripts that\r
+        expect HEAD to be a symbolic link.\r
+</p>\r
+</dd>\r
+<dt>\r
+core.logAllRefUpdates\r
+</dt>\r
+<dd>\r
+<p>\r
+        If true, <tt>git-update-ref</tt> will append a line to\r
+        "$GIT_DIR/logs/&lt;ref&gt;" listing the new SHA1 and the date/time\r
+        of the update.  If the file does not exist it will be\r
+        created automatically.  This information can be used to\r
+        determine what commit was the tip of a branch "2 days ago".\r
+        This value is false by default (no logging).\r
+</p>\r
+</dd>\r
+<dt>\r
+core.repositoryFormatVersion\r
+</dt>\r
+<dd>\r
+<p>\r
+        Internal variable identifying the repository format and layout\r
+        version.\r
+</p>\r
+</dd>\r
+<dt>\r
+core.sharedRepository\r
+</dt>\r
+<dd>\r
+<p>\r
+        If true, the repository is made shareable between several users\r
+        in a group (making sure all the files and objects are group-writable).\r
+        See <a href="git-init-db.html">git-init-db(1)</a>. False by default.\r
+</p>\r
+</dd>\r
+<dt>\r
+core.warnAmbiguousRefs\r
+</dt>\r
+<dd>\r
+<p>\r
+        If true, git will warn you if the ref name you passed it is ambiguous\r
+        and might match multiple refs in the .git/refs/ tree. True by default.\r
+</p>\r
+</dd>\r
+<dt>\r
+alias.*\r
+</dt>\r
+<dd>\r
+<p>\r
+        Command aliases for the <a href="git.html">git(1)</a> command wrapper - e.g.\r
+        after defining "alias.last = cat-file commit HEAD", the invocation\r
+        "git last" is equivalent to "git cat-file commit HEAD". To avoid\r
+        confusion and troubles with script usage, aliases that\r
+        hide existing git commands are ignored. Arguments are split by\r
+        spaces, the usual shell quoting and escaping is supported.\r
+        quote pair and a backslash can be used to quote them.\r
+</p>\r
+</dd>\r
+<dt>\r
+apply.whitespace\r
+</dt>\r
+<dd>\r
+<p>\r
+        Tells <tt>git-apply</tt> how to handle whitespaces, in the same way\r
+        as the <em>--whitespace</em> option. See <a href="git-apply.html">git-apply(1)</a>.\r
+</p>\r
+</dd>\r
+<dt>\r
+diff.renameLimit\r
+</dt>\r
+<dd>\r
+<p>\r
+        The number of files to consider when performing the copy/rename\r
+        detection; equivalent to the git diff option <em>-l</em>.\r
+</p>\r
+</dd>\r
+<dt>\r
+format.headers\r
+</dt>\r
+<dd>\r
+<p>\r
+        Additional email headers to include in a patch to be submitted\r
+        by mail.  See <a href="git-format-patch.html">git-format-patch(1)</a>.\r
+</p>\r
+</dd>\r
+<dt>\r
+gitcvs.enabled\r
+</dt>\r
+<dd>\r
+<p>\r
+        Whether the cvs pserver interface is enabled for this repository.\r
+        See <a href="git-cvsserver.html">git-cvsserver(1)</a>.\r
+</p>\r
+</dd>\r
+<dt>\r
+gitcvs.logfile\r
+</dt>\r
+<dd>\r
+<p>\r
+        Path to a log file where the cvs pserver interface well&#8230; logs\r
+        various stuff. See <a href="git-cvsserver.html">git-cvsserver(1)</a>.\r
+</p>\r
+</dd>\r
+<dt>\r
+http.sslVerify\r
+</dt>\r
+<dd>\r
+<p>\r
+        Whether to verify the SSL certificate when fetching or pushing\r
+        over HTTPS. Can be overridden by the <em>GIT_SSL_NO_VERIFY</em> environment\r
+        variable.\r
+</p>\r
+</dd>\r
+<dt>\r
+http.sslCert\r
+</dt>\r
+<dd>\r
+<p>\r
+        File containing the SSL certificate when fetching or pushing\r
+        over HTTPS. Can be overridden by the <em>GIT_SSL_CERT</em> environment\r
+        variable.\r
+</p>\r
+</dd>\r
+<dt>\r
+http.sslKey\r
+</dt>\r
+<dd>\r
+<p>\r
+        File containing the SSL private key when fetching or pushing\r
+        over HTTPS. Can be overridden by the <em>GIT_SSL_KEY</em> environment\r
+        variable.\r
+</p>\r
+</dd>\r
+<dt>\r
+http.sslCAInfo\r
+</dt>\r
+<dd>\r
+<p>\r
+        File containing the certificates to verify the peer with when\r
+        fetching or pushing over HTTPS. Can be overridden by the\r
+        <em>GIT_SSL_CAINFO</em> environment variable.\r
+</p>\r
+</dd>\r
+<dt>\r
+http.sslCAPath\r
+</dt>\r
+<dd>\r
+<p>\r
+        Path containing files with the CA certificates to verify the peer\r
+        with when fetching or pushing over HTTPS. Can be overridden\r
+        by the <em>GIT_SSL_CAPATH</em> environment variable.\r
+</p>\r
+</dd>\r
+<dt>\r
+http.maxRequests\r
+</dt>\r
+<dd>\r
+<p>\r
+        How many HTTP requests to launch in parallel. Can be overridden\r
+        by the <em>GIT_HTTP_MAX_REQUESTS</em> environment variable. Default is 5.\r
+</p>\r
+</dd>\r
+<dt>\r
+http.lowSpeedLimit, http.lowSpeedTime\r
+</dt>\r
+<dd>\r
+<p>\r
+        If the HTTP transfer speed is less than <em>http.lowSpeedLimit</em>\r
+        for longer than <em>http.lowSpeedTime</em> seconds, the transfer is aborted.\r
+        Can be overridden by the <em>GIT_HTTP_LOW_SPEED_LIMIT</em> and\r
+        <em>GIT_HTTP_LOW_SPEED_TIME</em> environment variables.\r
+</p>\r
+</dd>\r
+<dt>\r
+i18n.commitEncoding\r
+</dt>\r
+<dd>\r
+<p>\r
+        Character encoding the commit messages are stored in; git itself\r
+        does not care per se, but this information is necessary e.g. when\r
+        importing commits from emails or in the gitk graphical history\r
+        browser (and possibly at other places in the future or in other\r
+        porcelains). See e.g. <a href="git-mailinfo.html">git-mailinfo(1)</a>. Defaults to <em>utf-8</em>.\r
+</p>\r
+</dd>\r
+<dt>\r
+merge.summary\r
+</dt>\r
+<dd>\r
+<p>\r
+        Whether to include summaries of merged commits in newly created\r
+        merge commit messages. False by default.\r
+</p>\r
+</dd>\r
+<dt>\r
+pull.octopus\r
+</dt>\r
+<dd>\r
+<p>\r
+        The default merge strategy to use when pulling multiple branches\r
+        at once.\r
+</p>\r
+</dd>\r
+<dt>\r
+pull.twohead\r
+</dt>\r
+<dd>\r
+<p>\r
+        The default merge strategy to use when pulling a single branch.\r
+</p>\r
+</dd>\r
+<dt>\r
+show.difftree\r
+</dt>\r
+<dd>\r
+<p>\r
+        The default <a href="git-diff-tree.html">git-diff-tree(1)</a> arguments to be used\r
+        for <a href="git-show.html">git-show(1)</a>.\r
+</p>\r
+</dd>\r
+<dt>\r
+showbranch.default\r
+</dt>\r
+<dd>\r
+<p>\r
+        The default set of branches for <a href="git-show-branch.html">git-show-branch(1)</a>.\r
+        See <a href="git-show-branch.html">git-show-branch(1)</a>.\r
+</p>\r
+</dd>\r
+<dt>\r
+user.email\r
+</dt>\r
+<dd>\r
+<p>\r
+        Your email address to be recorded in any newly created commits.\r
+        Can be overridden by the <em>GIT_AUTHOR_EMAIL</em> and <em>GIT_COMMITTER_EMAIL</em>\r
+        environment variables.  See <a href="git-commit-tree.html">git-commit-tree(1)</a>.\r
+</p>\r
+</dd>\r
+<dt>\r
+user.name\r
+</dt>\r
+<dd>\r
+<p>\r
+        Your full name to be recorded in any newly created commits.\r
+        Can be overridden by the <em>GIT_AUTHOR_NAME</em> and <em>GIT_COMMITTER_NAME</em>\r
+        environment variables.  See <a href="git-commit-tree.html">git-commit-tree(1)</a>.\r
+</p>\r
+</dd>\r
+<dt>\r
+whatchanged.difftree\r
+</dt>\r
+<dd>\r
+<p>\r
+        The default <a href="git-diff-tree.html">git-diff-tree(1)</a> arguments to be used\r
+        for <a href="git-whatchanged.html">git-whatchanged(1)</a>.\r
+</p>\r
+</dd>\r
+<dt>\r
+imap\r
+</dt>\r
+<dd>\r
+<p>\r
+        The configuration variables in the <em>imap</em> section are described\r
+        in <a href="git-imap-send.html">git-imap-send(1)</a>.\r
+</p>\r
+</dd>\r
+</dl>\r
+</div>\r
 <h2>Author</h2>\r
 <div class="sectionbody">\r
 <p>Written by Johannes Schindelin &lt;Johannes.Schindelin@gmx.de&gt;</p>\r
 </div>\r
 <h2>Documentation</h2>\r
 <div class="sectionbody">\r
-<p>Documentation by Johannes Schindelin.</p>\r
+<p>Documentation by Johannes Schindelin, Petr Baudis and the git-list &lt;git@vger.kernel.org&gt;.</p>\r
 </div>\r
 <h2>GIT</h2>\r
 <div class="sectionbody">\r
@@ -482,7 +854,7 @@ i.e. the one without a "for &#8230;" postfix, do something like this:</p>
 </div>\r
 <div id="footer">\r
 <div id="footer-text">\r
-Last updated 03-Mar-2006 23:19:38 UTC\r
+Last updated 08-Jun-2006 00:48:14 UTC\r
 </div>\r
 </div>\r
 </body>\r