Autogenerated HTML docs for v1.7.6-rc1
[git/jnareb-git.git] / git-remote.html
blob45535277431721fb9789fa32d8fc84350192b227
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
2 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
4 <head>
5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
6 <meta name="generator" content="AsciiDoc 8.4.5" />
7 <title>git-remote(1)</title>
8 <style type="text/css">
9 /* Debug borders */
10 p, li, dt, dd, div, pre, h1, h2, h3, h4, h5, h6 {
12 border: 1px solid red;
16 body {
17 margin: 1em 5% 1em 5%;
20 a {
21 color: blue;
22 text-decoration: underline;
24 a:visited {
25 color: fuchsia;
28 em {
29 font-style: italic;
30 color: navy;
33 strong {
34 font-weight: bold;
35 color: #083194;
38 tt {
39 color: navy;
42 h1, h2, h3, h4, h5, h6 {
43 color: #527bbd;
44 font-family: sans-serif;
45 margin-top: 1.2em;
46 margin-bottom: 0.5em;
47 line-height: 1.3;
50 h1, h2, h3 {
51 border-bottom: 2px solid silver;
53 h2 {
54 padding-top: 0.5em;
56 h3 {
57 float: left;
59 h3 + * {
60 clear: left;
63 div.sectionbody {
64 font-family: serif;
65 margin-left: 0;
68 hr {
69 border: 1px solid silver;
72 p {
73 margin-top: 0.5em;
74 margin-bottom: 0.5em;
77 ul, ol, li > p {
78 margin-top: 0;
81 pre {
82 padding: 0;
83 margin: 0;
86 span#author {
87 color: #527bbd;
88 font-family: sans-serif;
89 font-weight: bold;
90 font-size: 1.1em;
92 span#email {
94 span#revnumber, span#revdate, span#revremark {
95 font-family: sans-serif;
98 div#footer {
99 font-family: sans-serif;
100 font-size: small;
101 border-top: 2px solid silver;
102 padding-top: 0.5em;
103 margin-top: 4.0em;
105 div#footer-text {
106 float: left;
107 padding-bottom: 0.5em;
109 div#footer-badges {
110 float: right;
111 padding-bottom: 0.5em;
114 div#preamble {
115 margin-top: 1.5em;
116 margin-bottom: 1.5em;
118 div.tableblock, div.imageblock, div.exampleblock, div.verseblock,
119 div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,
120 div.admonitionblock {
121 margin-top: 1.5em;
122 margin-bottom: 1.5em;
124 div.admonitionblock {
125 margin-top: 2.5em;
126 margin-bottom: 2.5em;
129 div.content { /* Block element content. */
130 padding: 0;
133 /* Block element titles. */
134 div.title, caption.title {
135 color: #527bbd;
136 font-family: sans-serif;
137 font-weight: bold;
138 text-align: left;
139 margin-top: 1.0em;
140 margin-bottom: 0.5em;
142 div.title + * {
143 margin-top: 0;
146 td div.title:first-child {
147 margin-top: 0.0em;
149 div.content div.title:first-child {
150 margin-top: 0.0em;
152 div.content + div.title {
153 margin-top: 0.0em;
156 div.sidebarblock > div.content {
157 background: #ffffee;
158 border: 1px solid silver;
159 padding: 0.5em;
162 div.listingblock > div.content {
163 border: 1px solid silver;
164 background: #f4f4f4;
165 padding: 0.5em;
168 div.quoteblock {
169 padding-left: 2.0em;
170 margin-right: 10%;
172 div.quoteblock > div.attribution {
173 padding-top: 0.5em;
174 text-align: right;
177 div.verseblock {
178 padding-left: 2.0em;
179 margin-right: 10%;
181 div.verseblock > div.content {
182 white-space: pre;
184 div.verseblock > div.attribution {
185 padding-top: 0.75em;
186 text-align: left;
188 /* DEPRECATED: Pre version 8.2.7 verse style literal block. */
189 div.verseblock + div.attribution {
190 text-align: left;
193 div.admonitionblock .icon {
194 vertical-align: top;
195 font-size: 1.1em;
196 font-weight: bold;
197 text-decoration: underline;
198 color: #527bbd;
199 padding-right: 0.5em;
201 div.admonitionblock td.content {
202 padding-left: 0.5em;
203 border-left: 2px solid silver;
206 div.exampleblock > div.content {
207 border-left: 2px solid silver;
208 padding: 0.5em;
211 div.imageblock div.content { padding-left: 0; }
212 span.image img { border-style: none; }
213 a.image:visited { color: white; }
215 dl {
216 margin-top: 0.8em;
217 margin-bottom: 0.8em;
219 dt {
220 margin-top: 0.5em;
221 margin-bottom: 0;
222 font-style: normal;
223 color: navy;
225 dd > *:first-child {
226 margin-top: 0.1em;
229 ul, ol {
230 list-style-position: outside;
232 ol.arabic {
233 list-style-type: decimal;
235 ol.loweralpha {
236 list-style-type: lower-alpha;
238 ol.upperalpha {
239 list-style-type: upper-alpha;
241 ol.lowerroman {
242 list-style-type: lower-roman;
244 ol.upperroman {
245 list-style-type: upper-roman;
248 div.compact ul, div.compact ol,
249 div.compact p, div.compact p,
250 div.compact div, div.compact div {
251 margin-top: 0.1em;
252 margin-bottom: 0.1em;
255 div.tableblock > table {
256 border: 3px solid #527bbd;
258 thead {
259 font-family: sans-serif;
260 font-weight: bold;
262 tfoot {
263 font-weight: bold;
265 td > div.verse {
266 white-space: pre;
268 p.table {
269 margin-top: 0;
271 /* Because the table frame attribute is overriden by CSS in most browsers. */
272 div.tableblock > table[frame="void"] {
273 border-style: none;
275 div.tableblock > table[frame="hsides"] {
276 border-left-style: none;
277 border-right-style: none;
279 div.tableblock > table[frame="vsides"] {
280 border-top-style: none;
281 border-bottom-style: none;
285 div.hdlist {
286 margin-top: 0.8em;
287 margin-bottom: 0.8em;
289 div.hdlist tr {
290 padding-bottom: 15px;
292 dt.hdlist1.strong, td.hdlist1.strong {
293 font-weight: bold;
295 td.hdlist1 {
296 vertical-align: top;
297 font-style: normal;
298 padding-right: 0.8em;
299 color: navy;
301 td.hdlist2 {
302 vertical-align: top;
304 div.hdlist.compact tr {
305 margin: 0;
306 padding-bottom: 0;
309 .comment {
310 background: yellow;
313 @media print {
314 div#footer-badges { display: none; }
317 div#toctitle {
318 color: #527bbd;
319 font-family: sans-serif;
320 font-size: 1.1em;
321 font-weight: bold;
322 margin-top: 1.0em;
323 margin-bottom: 0.1em;
326 div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {
327 margin-top: 0;
328 margin-bottom: 0;
330 div.toclevel2 {
331 margin-left: 2em;
332 font-size: 0.9em;
334 div.toclevel3 {
335 margin-left: 4em;
336 font-size: 0.9em;
338 div.toclevel4 {
339 margin-left: 6em;
340 font-size: 0.9em;
342 /* Overrides for manpage documents */
343 h1 {
344 padding-top: 0.5em;
345 padding-bottom: 0.5em;
346 border-top: 2px solid silver;
347 border-bottom: 2px solid silver;
349 h2 {
350 border-style: none;
352 div.sectionbody {
353 margin-left: 5%;
356 @media print {
357 div#toc { display: none; }
360 /* Workarounds for IE6's broken and incomplete CSS2. */
362 div.sidebar-content {
363 background: #ffffee;
364 border: 1px solid silver;
365 padding: 0.5em;
367 div.sidebar-title, div.image-title {
368 color: #527bbd;
369 font-family: sans-serif;
370 font-weight: bold;
371 margin-top: 0.0em;
372 margin-bottom: 0.5em;
375 div.listingblock div.content {
376 border: 1px solid silver;
377 background: #f4f4f4;
378 padding: 0.5em;
381 div.quoteblock-attribution {
382 padding-top: 0.5em;
383 text-align: right;
386 div.verseblock-content {
387 white-space: pre;
389 div.verseblock-attribution {
390 padding-top: 0.75em;
391 text-align: left;
394 div.exampleblock-content {
395 border-left: 2px solid silver;
396 padding-left: 0.5em;
399 /* IE6 sets dynamically generated links as visited. */
400 div#toc a:visited { color: blue; }
401 </style>
402 </head>
403 <body>
404 <div id="header">
405 <h1>
406 git-remote(1) Manual Page
407 </h1>
408 <h2>NAME</h2>
409 <div class="sectionbody">
410 <p>git-remote -
411 manage set of tracked repositories
412 </p>
413 </div>
414 </div>
415 <h2 id="_synopsis">SYNOPSIS</h2>
416 <div class="sectionbody">
417 <div class="verseblock">
418 <div class="verseblock-content"><em>git remote</em> [-v | --verbose]
419 <em>git remote add</em> [-t &lt;branch&gt;] [-m &lt;master&gt;] [-f] [--tags|--no-tags] [--mirror=&lt;fetch|push&gt;] &lt;name&gt; &lt;url&gt;
420 <em>git remote rename</em> &lt;old&gt; &lt;new&gt;
421 <em>git remote rm</em> &lt;name&gt;
422 <em>git remote set-head</em> &lt;name&gt; (-a | -d | &lt;branch&gt;)
423 <em>git remote set-branches</em> &lt;name&gt; [--add] &lt;branch&gt;&#8230;
424 <em>git remote set-url</em> [--push] &lt;name&gt; &lt;newurl&gt; [&lt;oldurl&gt;]
425 <em>git remote set-url --add</em> [--push] &lt;name&gt; &lt;newurl&gt;
426 <em>git remote set-url --delete</em> [--push] &lt;name&gt; &lt;url&gt;
427 <em>git remote</em> [-v | --verbose] <em>show</em> [-n] &lt;name&gt;
428 <em>git remote prune</em> [-n | --dry-run] &lt;name&gt;
429 <em>git remote</em> [-v | --verbose] <em>update</em> [-p | --prune] [(&lt;group&gt; | &lt;remote&gt;)&#8230;]</div>
430 <div class="verseblock-attribution">
431 </div></div>
432 </div>
433 <h2 id="_description">DESCRIPTION</h2>
434 <div class="sectionbody">
435 <div class="paragraph"><p>Manage the set of repositories ("remotes") whose branches you track.</p></div>
436 </div>
437 <h2 id="_options">OPTIONS</h2>
438 <div class="sectionbody">
439 <div class="dlist"><dl>
440 <dt class="hdlist1">
442 </dt>
443 <dt class="hdlist1">
444 --verbose
445 </dt>
446 <dd>
448 Be a little more verbose and show remote url after name.
449 NOTE: This must be placed between <tt>remote</tt> and <tt>subcommand</tt>.
450 </p>
451 </dd>
452 </dl></div>
453 </div>
454 <h2 id="_commands">COMMANDS</h2>
455 <div class="sectionbody">
456 <div class="paragraph"><p>With no arguments, shows a list of existing remotes. Several
457 subcommands are available to perform operations on the remotes.</p></div>
458 <div class="dlist"><dl>
459 <dt class="hdlist1">
460 <em>add</em>
461 </dt>
462 <dd>
464 Adds a remote named &lt;name&gt; for the repository at
465 &lt;url&gt;. The command <tt>git fetch &lt;name&gt;</tt> can then be used to create and
466 update remote-tracking branches &lt;name&gt;/&lt;branch&gt;.
467 </p>
468 <div class="paragraph"><p>With <tt>-f</tt> option, <tt>git fetch &lt;name&gt;</tt> is run immediately after
469 the remote information is set up.</p></div>
470 <div class="paragraph"><p>With <tt>--tags</tt> option, <tt>git fetch &lt;name&gt;</tt> imports every tag from the
471 remote repository.</p></div>
472 <div class="paragraph"><p>With <tt>--no-tags</tt> option, <tt>git fetch &lt;name&gt;</tt> does not import tags from
473 the remote repository.</p></div>
474 <div class="paragraph"><p>With <tt>-t &lt;branch&gt;</tt> option, instead of the default glob
475 refspec for the remote to track all branches under
476 <tt>$GIT_DIR/remotes/&lt;name&gt;/</tt>, a refspec to track only <tt>&lt;branch&gt;</tt>
477 is created. You can give more than one <tt>-t &lt;branch&gt;</tt> to track
478 multiple branches without grabbing all branches.</p></div>
479 <div class="paragraph"><p>With <tt>-m &lt;master&gt;</tt> option, <tt>$GIT_DIR/remotes/&lt;name&gt;/HEAD</tt> is set
480 up to point at remote&#8217;s <tt>&lt;master&gt;</tt> branch. See also the set-head command.</p></div>
481 <div class="paragraph"><p>When a fetch mirror is created with <tt>--mirror=fetch</tt>, the refs will not
482 be stored in the <em>refs/remotes/</em> namespace, but rather everything in
483 <em>refs/</em> on the remote will be directly mirrored into <em>refs/</em> in the
484 local repository. This option only makes sense in bare repositories,
485 because a fetch would overwrite any local commits.</p></div>
486 <div class="paragraph"><p>When a push mirror is created with <tt>--mirror=push</tt>, then <tt>git push</tt>
487 will always behave as if <tt>--mirror</tt> was passed.</p></div>
488 </dd>
489 <dt class="hdlist1">
490 <em>rename</em>
491 </dt>
492 <dd>
494 Rename the remote named &lt;old&gt; to &lt;new&gt;. All remote-tracking branches and
495 configuration settings for the remote are updated.
496 </p>
497 <div class="paragraph"><p>In case &lt;old&gt; and &lt;new&gt; are the same, and &lt;old&gt; is a file under
498 <tt>$GIT_DIR/remotes</tt> or <tt>$GIT_DIR/branches</tt>, the remote is converted to
499 the configuration file format.</p></div>
500 </dd>
501 <dt class="hdlist1">
502 <em>rm</em>
503 </dt>
504 <dd>
506 Remove the remote named &lt;name&gt;. All remote-tracking branches and
507 configuration settings for the remote are removed.
508 </p>
509 </dd>
510 <dt class="hdlist1">
511 <em>set-head</em>
512 </dt>
513 <dd>
515 Sets or deletes the default branch (<tt>$GIT_DIR/remotes/&lt;name&gt;/HEAD</tt>) for
516 the named remote. Having a default branch for a remote is not required,
517 but allows the name of the remote to be specified in lieu of a specific
518 branch. For example, if the default branch for <tt>origin</tt> is set to
519 <tt>master</tt>, then <tt>origin</tt> may be specified wherever you would normally
520 specify <tt>origin/master</tt>.
521 </p>
522 <div class="paragraph"><p>With <tt>-d</tt>, <tt>$GIT_DIR/remotes/&lt;name&gt;/HEAD</tt> is deleted.</p></div>
523 <div class="paragraph"><p>With <tt>-a</tt>, the remote is queried to determine its <tt>HEAD</tt>, then
524 <tt>$GIT_DIR/remotes/&lt;name&gt;/HEAD</tt> is set to the same branch. e.g., if the remote
525 <tt>HEAD</tt> is pointed at <tt>next</tt>, "<tt>git remote set-head origin -a</tt>" will set
526 <tt>$GIT_DIR/refs/remotes/origin/HEAD</tt> to <tt>refs/remotes/origin/next</tt>. This will
527 only work if <tt>refs/remotes/origin/next</tt> already exists; if not it must be
528 fetched first.</p></div>
529 <div class="paragraph"><p>Use <tt>&lt;branch&gt;</tt> to set <tt>$GIT_DIR/remotes/&lt;name&gt;/HEAD</tt> explicitly. e.g., "git
530 remote set-head origin master" will set <tt>$GIT_DIR/refs/remotes/origin/HEAD</tt> to
531 <tt>refs/remotes/origin/master</tt>. This will only work if
532 <tt>refs/remotes/origin/master</tt> already exists; if not it must be fetched first.</p></div>
533 </dd>
534 <dt class="hdlist1">
535 <em>set-branches</em>
536 </dt>
537 <dd>
539 Changes the list of branches tracked by the named remote.
540 This can be used to track a subset of the available remote branches
541 after the initial setup for a remote.
542 </p>
543 <div class="paragraph"><p>The named branches will be interpreted as if specified with the
544 <tt>-t</tt> option on the <em>git remote add</em> command line.</p></div>
545 <div class="paragraph"><p>With <tt>--add</tt>, instead of replacing the list of currently tracked
546 branches, adds to that list.</p></div>
547 </dd>
548 <dt class="hdlist1">
549 <em>set-url</em>
550 </dt>
551 <dd>
553 Changes URL remote points to. Sets first URL remote points to matching
554 regex &lt;oldurl&gt; (first URL if no &lt;oldurl&gt; is given) to &lt;newurl&gt;. If
555 &lt;oldurl&gt; doesn&#8217;t match any URL, error occurs and nothing is changed.
556 </p>
557 <div class="paragraph"><p>With <em>--push</em>, push URLs are manipulated instead of fetch URLs.</p></div>
558 <div class="paragraph"><p>With <em>--add</em>, instead of changing some URL, new URL is added.</p></div>
559 <div class="paragraph"><p>With <em>--delete</em>, instead of changing some URL, all URLs matching
560 regex &lt;url&gt; are deleted. Trying to delete all non-push URLs is an
561 error.</p></div>
562 </dd>
563 <dt class="hdlist1">
564 <em>show</em>
565 </dt>
566 <dd>
568 Gives some information about the remote &lt;name&gt;.
569 </p>
570 <div class="paragraph"><p>With <tt>-n</tt> option, the remote heads are not queried first with
571 <tt>git ls-remote &lt;name&gt;</tt>; cached information is used instead.</p></div>
572 </dd>
573 <dt class="hdlist1">
574 <em>prune</em>
575 </dt>
576 <dd>
578 Deletes all stale remote-tracking branches under &lt;name&gt;.
579 These stale branches have already been removed from the remote repository
580 referenced by &lt;name&gt;, but are still locally available in
581 "remotes/&lt;name&gt;".
582 </p>
583 <div class="paragraph"><p>With <tt>--dry-run</tt> option, report what branches will be pruned, but do not
584 actually prune them.</p></div>
585 </dd>
586 <dt class="hdlist1">
587 <em>update</em>
588 </dt>
589 <dd>
591 Fetch updates for a named set of remotes in the repository as defined by
592 remotes.&lt;group&gt;. If a named group is not specified on the command line,
593 the configuration parameter remotes.default will be used; if
594 remotes.default is not defined, all remotes which do not have the
595 configuration parameter remote.&lt;name&gt;.skipDefaultUpdate set to true will
596 be updated. (See <a href="git-config.html">git-config(1)</a>).
597 </p>
598 <div class="paragraph"><p>With <tt>--prune</tt> option, prune all the remotes that are updated.</p></div>
599 </dd>
600 </dl></div>
601 </div>
602 <h2 id="_discussion">DISCUSSION</h2>
603 <div class="sectionbody">
604 <div class="paragraph"><p>The remote configuration is achieved using the <tt>remote.origin.url</tt> and
605 <tt>remote.origin.fetch</tt> configuration variables. (See
606 <a href="git-config.html">git-config(1)</a>).</p></div>
607 </div>
608 <h2 id="_examples">Examples</h2>
609 <div class="sectionbody">
610 <div class="ulist"><ul>
611 <li>
613 Add a new remote, fetch, and check out a branch from it
614 </p>
615 <div class="listingblock">
616 <div class="content">
617 <pre><tt>$ git remote
618 origin
619 $ git branch -r
620 origin/master
621 $ git remote add linux-nfs git://linux-nfs.org/pub/linux/nfs-2.6.git
622 $ git remote
623 linux-nfs
624 origin
625 $ git fetch
626 * refs/remotes/linux-nfs/master: storing branch 'master' ...
627 commit: bf81b46
628 $ git branch -r
629 origin/master
630 linux-nfs/master
631 $ git checkout -b nfs linux-nfs/master
632 ...</tt></pre>
633 </div></div>
634 </li>
635 <li>
637 Imitate <em>git clone</em> but track only selected branches
638 </p>
639 <div class="listingblock">
640 <div class="content">
641 <pre><tt>$ mkdir project.git
642 $ cd project.git
643 $ git init
644 $ git remote add -f -t master -m master origin git://example.com/git.git/
645 $ git merge origin</tt></pre>
646 </div></div>
647 </li>
648 </ul></div>
649 </div>
650 <h2 id="_see_also">SEE ALSO</h2>
651 <div class="sectionbody">
652 <div class="paragraph"><p><a href="git-fetch.html">git-fetch(1)</a>
653 <a href="git-branch.html">git-branch(1)</a>
654 <a href="git-config.html">git-config(1)</a></p></div>
655 </div>
656 <h2 id="_git">GIT</h2>
657 <div class="sectionbody">
658 <div class="paragraph"><p>Part of the <a href="git.html">git(1)</a> suite</p></div>
659 </div>
660 <div id="footer">
661 <div id="footer-text">
662 Last updated 2011-04-06 19:53:11 UTC
663 </div>
664 </div>
665 </body>
666 </html>