1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
\r
2 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
\r
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
\r
5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
\r
6 <meta name="generator" content="AsciiDoc 7.0.2" />
\r
7 <style type="text/css">
\r
9 p, li, dt, dd, div, pre, h1, h2, h3, h4, h5, h6 {
\r
11 border: 1px solid red;
\r
16 margin: 1em 5% 1em 5%;
\r
20 a:visited { color: fuchsia; }
\r
34 h1, h2, h3, h4, h5, h6 {
\r
36 font-family: sans-serif;
\r
38 margin-bottom: 0.5em;
\r
43 border-bottom: 2px solid silver;
\r
46 border-bottom: 2px solid silver;
\r
56 border: 1px solid silver;
\r
61 margin-bottom: 0.5em;
\r
71 font-family: sans-serif;
\r
78 font-family: sans-serif;
\r
82 font-family: sans-serif;
\r
84 border-top: 2px solid silver;
\r
90 padding-bottom: 0.5em;
\r
94 padding-bottom: 0.5em;
\r
98 div.tableblock, div.imageblock, div.exampleblock, div.verseblock,
\r
99 div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,
\r
100 div.admonitionblock {
\r
103 margin-bottom: 1.5em;
\r
105 div.admonitionblock {
\r
107 margin-bottom: 2.5em;
\r
110 div.content { /* Block element content. */
\r
114 /* Block element titles. */
\r
115 div.title, caption.title {
\r
116 font-family: sans-serif;
\r
120 margin-bottom: 0.5em;
\r
126 td div.title:first-child {
\r
129 div.content div.title:first-child {
\r
132 div.content + div.title {
\r
136 div.sidebarblock > div.content {
\r
137 background: #ffffee;
\r
138 border: 1px solid silver;
\r
142 div.listingblock > div.content {
\r
143 border: 1px solid silver;
\r
144 background: #f4f4f4;
\r
148 div.quoteblock > div.content {
\r
149 padding-left: 2.0em;
\r
151 div.quoteblock .attribution {
\r
155 div.admonitionblock .icon {
\r
156 vertical-align: top;
\r
159 text-decoration: underline;
\r
161 padding-right: 0.5em;
\r
163 div.admonitionblock td.content {
\r
164 padding-left: 0.5em;
\r
165 border-left: 2px solid silver;
\r
168 div.exampleblock > div.content {
\r
169 border-left: 2px solid silver;
\r
173 div.verseblock div.content {
\r
177 div.imageblock div.content { padding-left: 0; }
\r
178 div.imageblock img { border: 1px solid silver; }
\r
179 span.image img { border-style: none; }
\r
183 margin-bottom: 0.8em;
\r
188 font-style: italic;
\r
190 dd > *:first-child {
\r
195 list-style-position: outside;
\r
198 list-style-type: lower-alpha;
\r
201 div.tableblock > table {
\r
202 border-color: #527bbd;
\r
206 font-family: sans-serif;
\r
215 margin-bottom: 0.8em;
\r
218 vertical-align: top;
\r
219 font-style: italic;
\r
220 padding-right: 0.8em;
\r
223 vertical-align: top;
\r
227 div#footer-badges { display: none; }
\r
229 include::./stylesheets/xhtml11-manpage.css[]
\r
230 /* Workarounds for IE6's broken and incomplete CSS2. */
\r
232 div.sidebar-content {
\r
233 background: #ffffee;
\r
234 border: 1px solid silver;
\r
237 div.sidebar-title, div.image-title {
\r
238 font-family: sans-serif;
\r
241 margin-bottom: 0.5em;
\r
244 div.listingblock div.content {
\r
245 border: 1px solid silver;
\r
246 background: #f4f4f4;
\r
250 div.quoteblock-content {
\r
251 padding-left: 2.0em;
\r
254 div.exampleblock-content {
\r
255 border-left: 2px solid silver;
\r
256 padding-left: 0.5em;
\r
259 <title>git-repo-config(1)</title>
\r
264 git-repo-config(1) Manual Page
\r
267 <div class="sectionbody">
\r
268 <p>git-repo-config -
\r
269 Get and set options in .git/config
\r
274 <div class="sectionbody">
\r
275 <div class="verseblock">
\r
276 <div class="content"><em>git-repo-config</em> [type] name [value [value_regex]]
\r
277 <em>git-repo-config</em> [type] --replace-all name [value [value_regex]]
\r
278 <em>git-repo-config</em> [type] --get name [value_regex]
\r
279 <em>git-repo-config</em> [type] --get-all name [value_regex]
\r
280 <em>git-repo-config</em> [type] --unset name [value_regex]
\r
281 <em>git-repo-config</em> [type] --unset-all name [value_regex]
\r
282 <em>git-repo-config</em> -l | --list</div></div>
\r
284 <h2>DESCRIPTION</h2>
\r
285 <div class="sectionbody">
\r
286 <p>You can query/set/replace/unset options with this command. The name is
\r
287 actually the section and the key separated by a dot, and the value will be
\r
289 <p>If you want to set/unset an option which can occur on multiple
\r
290 lines, a POSIX regexp <tt>value_regex</tt> needs to be given. Only the
\r
291 existing values that match the regexp are updated or unset. If
\r
292 you want to handle the lines that do <strong>not</strong> match the regex, just
\r
293 prepend a single exclamation mark in front (see EXAMPLES).</p>
\r
294 <p>The type specifier can be either <em>--int</em> or <em>--bool</em>, which will make
\r
295 <em>git-repo-config</em> ensure that the variable(s) are of the given type and
\r
296 convert the value to the canonical form (simple decimal number for int,
\r
297 a "true" or "false" string for bool). If no type specifier is passed,
\r
298 no checks or transformations are performed on the value.</p>
\r
299 <p>This command will fail if:</p>
\r
303 The .git/config file is invalid,
\r
308 Can not write to .git/config,
\r
313 no section was provided,
\r
318 the section or key is invalid,
\r
323 you try to unset an option which does not exist, or
\r
328 you try to unset/set an option for which multiple lines match.
\r
334 <div class="sectionbody">
\r
341 Default behavior is to replace at most one line. This replaces
\r
342 all lines matching the key (and optionally the value_regex).
\r
350 Get the value for a given key (optionally filtered by a regex
\r
351 matching the value).
\r
359 Like get, but does not fail if the number of values for the key
\r
360 is not exactly one.
\r
368 Like --get-all, but interprets the name as a regular expression.
\r
376 Remove the line matching the key from .git/config.
\r
384 Remove all matching lines from .git/config.
\r
392 List all variables set in .git/config.
\r
398 <div class="sectionbody">
\r
399 <p>Given a .git/config like this:</p>
\r
400 <div class="literalblock">
\r
401 <div class="content">
\r
403 # This is the config file, and
\r
404 # a '#' or ';' character indicates
\r
408 <div class="literalblock">
\r
409 <div class="content">
\r
410 <pre><tt>; core variables
\r
412 ; Don't trust file modes
\r
413 filemode = false</tt></pre>
\r
415 <div class="literalblock">
\r
416 <div class="content">
\r
417 <pre><tt>; Our diff algorithm
\r
419 external = "/usr/local/bin/gnu-diff -u"
\r
420 renames = true</tt></pre>
\r
422 <div class="literalblock">
\r
423 <div class="content">
\r
424 <pre><tt>; Proxy settings
\r
426 gitproxy="ssh" for "ssh://kernel.org/"
\r
427 gitproxy="proxy-command" for kernel.org
\r
428 gitproxy="myprotocol-command" for "my://"
\r
429 gitproxy=default-proxy ; for all the rest</tt></pre>
\r
431 <p>you can set the filemode to true with</p>
\r
432 <div class="listingblock">
\r
433 <div class="content">
\r
434 <pre><tt>% git repo-config core.filemode true</tt></pre>
\r
436 <p>The hypothetic proxy command entries actually have a postfix to discern
\r
437 to what URL they apply. Here is how to change the entry for kernel.org
\r
439 <div class="listingblock">
\r
440 <div class="content">
\r
441 <pre><tt>% git repo-config core.gitproxy '"ssh" for kernel.org' 'for kernel.org$'</tt></pre>
\r
443 <p>This makes sure that only the key/value pair for kernel.org is replaced.</p>
\r
444 <p>To delete the entry for renames, do</p>
\r
445 <div class="listingblock">
\r
446 <div class="content">
\r
447 <pre><tt>% git repo-config --unset diff.renames</tt></pre>
\r
449 <p>If you want to delete an entry for a multivar (like core.gitproxy above),
\r
450 you have to provide a regex matching the value of exactly one line.</p>
\r
451 <p>To query the value for a given key, do</p>
\r
452 <div class="listingblock">
\r
453 <div class="content">
\r
454 <pre><tt>% git repo-config --get core.filemode</tt></pre>
\r
457 <div class="listingblock">
\r
458 <div class="content">
\r
459 <pre><tt>% git repo-config core.filemode</tt></pre>
\r
461 <p>or, to query a multivar:</p>
\r
462 <div class="listingblock">
\r
463 <div class="content">
\r
464 <pre><tt>% git repo-config --get core.gitproxy "for kernel.org$"</tt></pre>
\r
466 <p>If you want to know all the values for a multivar, do:</p>
\r
467 <div class="listingblock">
\r
468 <div class="content">
\r
469 <pre><tt>% git repo-config --get-all core.gitproxy</tt></pre>
\r
471 <p>If you like to live dangerous, you can replace <strong>all</strong> core.gitproxy by a
\r
473 <div class="listingblock">
\r
474 <div class="content">
\r
475 <pre><tt>% git repo-config --replace-all core.gitproxy ssh</tt></pre>
\r
477 <p>However, if you really only want to replace the line for the default proxy,
\r
478 i.e. the one without a "for …" postfix, do something like this:</p>
\r
479 <div class="listingblock">
\r
480 <div class="content">
\r
481 <pre><tt>% git repo-config core.gitproxy ssh '! for '</tt></pre>
\r
483 <p>To actually match only values with an exclamation mark, you have to</p>
\r
484 <div class="listingblock">
\r
485 <div class="content">
\r
486 <pre><tt>% git repo-config section.key value '[!]'</tt></pre>
\r
489 <h2>CONFIGURATION FILE</h2>
\r
490 <div class="sectionbody">
\r
491 <p>The git configuration file contains a number of variables that affect
\r
492 the git command's behavior. They can be used by both the git plumbing
\r
493 and the porcelains. The variables are divided into sections, where
\r
494 in the fully qualified variable name the variable itself is the last
\r
495 dot-separated segment and the section name is everything before the last
\r
496 dot. The variable names are case-insensitive and only alphanumeric
\r
497 characters are allowed. Some variables may appear multiple times.</p>
\r
498 <p>The syntax is fairly flexible and permissive; whitespaces are mostly
\r
499 ignored. The <em>#</em> and <em>;</em> characters begin comments to the end of line,
\r
500 blank lines are ignored, lines containing strings enclosed in square
\r
501 brackets start sections and all the other lines are recognized
\r
502 as setting variables, in the form <em>name = value</em>. If there is no equal
\r
503 sign on the line, the entire line is taken as <em>name</em> and the variable
\r
504 is recognized as boolean "true". String values may be entirely or partially
\r
505 enclosed in double quotes; some variables may require special value format.</p>
\r
507 <div class="literalblock">
\r
508 <div class="content">
\r
509 <pre><tt># Core variables
\r
511 ; Don't trust file modes
\r
512 filemode = false</tt></pre>
\r
514 <div class="literalblock">
\r
515 <div class="content">
\r
516 <pre><tt># Our diff algorithm
\r
518 external = "/usr/local/bin/gnu-diff -u"
\r
519 renames = true</tt></pre>
\r
522 <p>Note that this list is non-comprehensive and not necessarily complete.
\r
523 For command-specific variables, you will find a more detailed description
\r
524 in the appropriate manual page. You will find a description of non-core
\r
525 porcelain configuration variables in the respective porcelain documentation.</p>
\r
532 If false, the executable bit differences between the index and
\r
533 the working copy are ignored; useful on broken filesystems like FAT.
\r
534 See <a href="git-update-index.html">git-update-index(1)</a>. True by default.
\r
542 A "proxy command" to execute (as <em>command host port</em>) instead
\r
543 of establishing direct connection to the remote server when
\r
544 using the git protocol for fetching. If the variable value is
\r
545 in the "COMMAND for DOMAIN" format, the command is applied only
\r
546 on hostnames ending with the specified domain string. This variable
\r
547 may be set multiple times and is matched in the given order;
\r
548 the first match wins.
\r
550 <p>Can be overridden by the <em>GIT_PROXY_COMMAND</em> environment variable
\r
551 (which always applies universally, without the special "for"
\r
559 The working copy files are assumed to stay unchanged until you
\r
560 mark them otherwise manually - Git will not detect the file changes
\r
561 by lstat() calls. This is useful on systems where those are very
\r
562 slow, such as Microsoft Windows. See <a href="git-update-index.html">git-update-index(1)</a>.
\r
567 core.preferSymlinkRefs
\r
571 Instead of the default "symref" format for HEAD
\r
572 and other symbolic reference files, use symbolic links.
\r
573 This is sometimes needed to work with old scripts that
\r
574 expect HEAD to be a symbolic link.
\r
578 core.logAllRefUpdates
\r
582 If true, <tt>git-update-ref</tt> will append a line to
\r
583 "$GIT_DIR/logs/<ref>" listing the new SHA1 and the date/time
\r
584 of the update. If the file does not exist it will be
\r
585 created automatically. This information can be used to
\r
586 determine what commit was the tip of a branch "2 days ago".
\r
587 This value is false by default (no logging).
\r
591 core.repositoryFormatVersion
\r
595 Internal variable identifying the repository format and layout
\r
600 core.sharedRepository
\r
604 If true, the repository is made shareable between several users
\r
605 in a group (making sure all the files and objects are group-writable).
\r
606 See <a href="git-init-db.html">git-init-db(1)</a>. False by default.
\r
610 core.warnAmbiguousRefs
\r
614 If true, git will warn you if the ref name you passed it is ambiguous
\r
615 and might match multiple refs in the .git/refs/ tree. True by default.
\r
623 Command aliases for the <a href="git.html">git(1)</a> command wrapper - e.g.
\r
624 after defining "alias.last = cat-file commit HEAD", the invocation
\r
625 "git last" is equivalent to "git cat-file commit HEAD". To avoid
\r
626 confusion and troubles with script usage, aliases that
\r
627 hide existing git commands are ignored. Arguments are split by
\r
628 spaces, the usual shell quoting and escaping is supported.
\r
629 quote pair and a backslash can be used to quote them.
\r
637 Tells <tt>git-apply</tt> how to handle whitespaces, in the same way
\r
638 as the <em>--whitespace</em> option. See <a href="git-apply.html">git-apply(1)</a>.
\r
646 The number of files to consider when performing the copy/rename
\r
647 detection; equivalent to the git diff option <em>-l</em>.
\r
655 Additional email headers to include in a patch to be submitted
\r
656 by mail. See <a href="git-format-patch.html">git-format-patch(1)</a>.
\r
664 Whether the cvs pserver interface is enabled for this repository.
\r
665 See <a href="git-cvsserver.html">git-cvsserver(1)</a>.
\r
673 Path to a log file where the cvs pserver interface well… logs
\r
674 various stuff. See <a href="git-cvsserver.html">git-cvsserver(1)</a>.
\r
682 Whether to verify the SSL certificate when fetching or pushing
\r
683 over HTTPS. Can be overridden by the <em>GIT_SSL_NO_VERIFY</em> environment
\r
692 File containing the SSL certificate when fetching or pushing
\r
693 over HTTPS. Can be overridden by the <em>GIT_SSL_CERT</em> environment
\r
702 File containing the SSL private key when fetching or pushing
\r
703 over HTTPS. Can be overridden by the <em>GIT_SSL_KEY</em> environment
\r
712 File containing the certificates to verify the peer with when
\r
713 fetching or pushing over HTTPS. Can be overridden by the
\r
714 <em>GIT_SSL_CAINFO</em> environment variable.
\r
722 Path containing files with the CA certificates to verify the peer
\r
723 with when fetching or pushing over HTTPS. Can be overridden
\r
724 by the <em>GIT_SSL_CAPATH</em> environment variable.
\r
732 How many HTTP requests to launch in parallel. Can be overridden
\r
733 by the <em>GIT_HTTP_MAX_REQUESTS</em> environment variable. Default is 5.
\r
737 http.lowSpeedLimit, http.lowSpeedTime
\r
741 If the HTTP transfer speed is less than <em>http.lowSpeedLimit</em>
\r
742 for longer than <em>http.lowSpeedTime</em> seconds, the transfer is aborted.
\r
743 Can be overridden by the <em>GIT_HTTP_LOW_SPEED_LIMIT</em> and
\r
744 <em>GIT_HTTP_LOW_SPEED_TIME</em> environment variables.
\r
748 i18n.commitEncoding
\r
752 Character encoding the commit messages are stored in; git itself
\r
753 does not care per se, but this information is necessary e.g. when
\r
754 importing commits from emails or in the gitk graphical history
\r
755 browser (and possibly at other places in the future or in other
\r
756 porcelains). See e.g. <a href="git-mailinfo.html">git-mailinfo(1)</a>. Defaults to <em>utf-8</em>.
\r
764 Whether to include summaries of merged commits in newly created
\r
765 merge commit messages. False by default.
\r
773 The default merge strategy to use when pulling multiple branches
\r
782 The default merge strategy to use when pulling a single branch.
\r
790 The default <a href="git-diff-tree.html">git-diff-tree(1)</a> arguments to be used
\r
791 for <a href="git-show.html">git-show(1)</a>.
\r
799 The default set of branches for <a href="git-show-branch.html">git-show-branch(1)</a>.
\r
800 See <a href="git-show-branch.html">git-show-branch(1)</a>.
\r
808 Your email address to be recorded in any newly created commits.
\r
809 Can be overridden by the <em>GIT_AUTHOR_EMAIL</em> and <em>GIT_COMMITTER_EMAIL</em>
\r
810 environment variables. See <a href="git-commit-tree.html">git-commit-tree(1)</a>.
\r
818 Your full name to be recorded in any newly created commits.
\r
819 Can be overridden by the <em>GIT_AUTHOR_NAME</em> and <em>GIT_COMMITTER_NAME</em>
\r
820 environment variables. See <a href="git-commit-tree.html">git-commit-tree(1)</a>.
\r
824 whatchanged.difftree
\r
828 The default <a href="git-diff-tree.html">git-diff-tree(1)</a> arguments to be used
\r
829 for <a href="git-whatchanged.html">git-whatchanged(1)</a>.
\r
837 The configuration variables in the <em>imap</em> section are described
\r
838 in <a href="git-imap-send.html">git-imap-send(1)</a>.
\r
844 <div class="sectionbody">
\r
845 <p>Written by Johannes Schindelin <Johannes.Schindelin@gmx.de></p>
\r
847 <h2>Documentation</h2>
\r
848 <div class="sectionbody">
\r
849 <p>Documentation by Johannes Schindelin, Petr Baudis and the git-list <git@vger.kernel.org>.</p>
\r
852 <div class="sectionbody">
\r
853 <p>Part of the <a href="git.html">git(7)</a> suite</p>
\r
856 <div id="footer-text">
\r
857 Last updated 08-Jun-2006 00:48:14 UTC
\r