blob: 4d5f3d77d883849a1db37c4b86ca330abeea8e93 [file] [log] [blame]
Junio C Hamano1a4e8412005-12-27 08:17:231<!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" />
Junio C Hamano01078922006-03-10 00:31:476<meta name="generator" content="AsciiDoc 7.0.2" />
Junio C Hamano1a4e8412005-12-27 08:17:237<style type="text/css">
8/* Debug borders */
9p, li, dt, dd, div, pre, h1, h2, h3, h4, h5, h6 {
10/*
11 border: 1px solid red;
12*/
13}
14
15body {
16 margin: 1em 5% 1em 5%;
17}
18
19a { color: blue; }
20a:visited { color: fuchsia; }
21
22em {
23 font-style: italic;
24}
25
26strong {
27 font-weight: bold;
28}
29
30tt {
31 color: navy;
32}
33
34h1, h2, h3, h4, h5, h6 {
35 color: #527bbd;
36 font-family: sans-serif;
37 margin-top: 1.2em;
38 margin-bottom: 0.5em;
39 line-height: 1.3;
40}
41
42h1 {
43 border-bottom: 2px solid silver;
44}
45h2 {
46 border-bottom: 2px solid silver;
47 padding-top: 0.5em;
48}
49
50div.sectionbody {
51 font-family: serif;
52 margin-left: 0;
53}
54
55hr {
56 border: 1px solid silver;
57}
58
59p {
60 margin-top: 0.5em;
61 margin-bottom: 0.5em;
62}
63
64pre {
65 padding: 0;
66 margin: 0;
67}
68
69span#author {
70 color: #527bbd;
71 font-family: sans-serif;
72 font-weight: bold;
73 font-size: 1.2em;
74}
75span#email {
76}
77span#revision {
78 font-family: sans-serif;
79}
80
81div#footer {
82 font-family: sans-serif;
83 font-size: small;
84 border-top: 2px solid silver;
85 padding-top: 0.5em;
86 margin-top: 4.0em;
87}
88div#footer-text {
89 float: left;
90 padding-bottom: 0.5em;
91}
92div#footer-badges {
93 float: right;
94 padding-bottom: 0.5em;
95}
96
97div#preamble,
98div.tableblock, div.imageblock, div.exampleblock, div.verseblock,
99div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,
100div.admonitionblock {
101 margin-right: 10%;
102 margin-top: 1.5em;
103 margin-bottom: 1.5em;
104}
105div.admonitionblock {
106 margin-top: 2.5em;
107 margin-bottom: 2.5em;
108}
109
110div.content { /* Block element content. */
111 padding: 0;
112}
113
114/* Block element titles. */
115div.title, caption.title {
116 font-family: sans-serif;
117 font-weight: bold;
118 text-align: left;
119 margin-top: 1.0em;
120 margin-bottom: 0.5em;
121}
122div.title + * {
123 margin-top: 0;
124}
125
126td div.title:first-child {
127 margin-top: 0.0em;
128}
129div.content div.title:first-child {
130 margin-top: 0.0em;
131}
132div.content + div.title {
133 margin-top: 0.0em;
134}
135
136div.sidebarblock > div.content {
137 background: #ffffee;
138 border: 1px solid silver;
139 padding: 0.5em;
140}
141
142div.listingblock > div.content {
143 border: 1px solid silver;
144 background: #f4f4f4;
145 padding: 0.5em;
146}
147
148div.quoteblock > div.content {
149 padding-left: 2.0em;
150}
151div.quoteblock .attribution {
152 text-align: right;
153}
154
155div.admonitionblock .icon {
156 vertical-align: top;
157 font-size: 1.1em;
158 font-weight: bold;
159 text-decoration: underline;
160 color: #527bbd;
161 padding-right: 0.5em;
162}
163div.admonitionblock td.content {
164 padding-left: 0.5em;
165 border-left: 2px solid silver;
166}
167
168div.exampleblock > div.content {
169 border-left: 2px solid silver;
170 padding: 0.5em;
171}
172
173div.verseblock div.content {
174 white-space: pre;
175}
176
177div.imageblock div.content { padding-left: 0; }
178div.imageblock img { border: 1px solid silver; }
179span.image img { border-style: none; }
180
181dl {
182 margin-top: 0.8em;
183 margin-bottom: 0.8em;
184}
185dt {
186 margin-top: 0.5em;
187 margin-bottom: 0;
188 font-style: italic;
189}
190dd > *:first-child {
191 margin-top: 0;
192}
193
194ul, ol {
195 list-style-position: outside;
196}
197ol.olist2 {
198 list-style-type: lower-alpha;
199}
200
201div.tableblock > table {
202 border-color: #527bbd;
203 border-width: 3px;
204}
205thead {
206 font-family: sans-serif;
207 font-weight: bold;
208}
209tfoot {
210 font-weight: bold;
211}
212
213div.hlist {
214 margin-top: 0.8em;
215 margin-bottom: 0.8em;
216}
217td.hlist1 {
218 vertical-align: top;
219 font-style: italic;
220 padding-right: 0.8em;
221}
222td.hlist2 {
223 vertical-align: top;
224}
225
226@media print {
227 div#footer-badges { display: none; }
228}
229include::./stylesheets/xhtml11-manpage.css[]
230/* Workarounds for IE6's broken and incomplete CSS2. */
231
232div.sidebar-content {
233 background: #ffffee;
234 border: 1px solid silver;
235 padding: 0.5em;
236}
237div.sidebar-title, div.image-title {
238 font-family: sans-serif;
239 font-weight: bold;
240 margin-top: 0.0em;
241 margin-bottom: 0.5em;
242}
243
244div.listingblock div.content {
245 border: 1px solid silver;
246 background: #f4f4f4;
247 padding: 0.5em;
248}
249
250div.quoteblock-content {
251 padding-left: 2.0em;
252}
253
254div.exampleblock-content {
255 border-left: 2px solid silver;
256 padding-left: 0.5em;
257}
258</style>
259<title>git-clone(1)</title>
260</head>
261<body>
262<div id="header">
263<h1>
264git-clone(1) Manual Page
265</h1>
266<h2>NAME</h2>
267<div class="sectionbody">
268<p>git-clone -
Junio C Hamano01078922006-03-10 00:31:47269 Clones a repository
Junio C Hamano1a4e8412005-12-27 08:17:23270</p>
271</div>
272</div>
273<h2>SYNOPSIS</h2>
274<div class="sectionbody">
Junio C Hamano235a91e2006-01-07 01:13:58275<div class="verseblock">
Junio C Hamanof31d9f52006-05-28 20:58:09276<div class="content"><em>git-clone</em> [--template=&lt;template_directory&gt;] [-l [-s]] [-q] [-n] [--bare]
277 [-o &lt;name&gt;] [-u &lt;upload-pack&gt;] [--reference &lt;repository&gt;]
Junio C Hamano8db10ef2006-06-09 04:31:57278 [--use-separate-remote] &lt;repository&gt; [&lt;directory&gt;]</div></div>
Junio C Hamano1a4e8412005-12-27 08:17:23279</div>
280<h2>DESCRIPTION</h2>
281<div class="sectionbody">
282<p>Clones a repository into a newly created directory. All remote
283branch heads are copied under <tt>$GIT_DIR/refs/heads/</tt>, except
284that the remote <tt>master</tt> is also copied to <tt>origin</tt> branch.</p>
285<p>In addition, <tt>$GIT_DIR/remotes/origin</tt> file is set up to have
286this line:</p>
287<div class="literalblock">
288<div class="content">
289<pre><tt>Pull: master:origin</tt></pre>
290</div></div>
291<p>This is to help the typical workflow of working off of the
292remote <tt>master</tt> branch. Every time <tt>git pull</tt> without argument
293is run, the progress on the remote <tt>master</tt> branch is tracked by
294copying it into the local <tt>origin</tt> branch, and merged into the
295branch you are currently working on. Remote branches other than
296<tt>master</tt> are also added there to be tracked.</p>
297</div>
298<h2>OPTIONS</h2>
299<div class="sectionbody">
300<dl>
301<dt>
302--local
303</dt>
304<dt>
305-l
306</dt>
307<dd>
308<p>
309 When the repository to clone from is on a local machine,
310 this flag bypasses normal "git aware" transport
311 mechanism and clones the repository by making a copy of
312 HEAD and everything under objects and refs directories.
313 The files under .git/objects/ directory are hardlinked
314 to save space when possible.
315</p>
316</dd>
317<dt>
318--shared
319</dt>
320<dt>
321-s
322</dt>
323<dd>
324<p>
325 When the repository to clone is on the local machine,
326 instead of using hard links, automatically setup
Junio C Hamanof50bfec2006-04-19 09:44:12327 .git/objects/info/alternates to share the objects
Junio C Hamano1a4e8412005-12-27 08:17:23328 with the source repository. The resulting repository
329 starts out without any object of its own.
330</p>
331</dd>
332<dt>
Junio C Hamanof50bfec2006-04-19 09:44:12333--reference &lt;repository&gt;
334</dt>
335<dd>
336<p>
337 If the reference repository is on the local machine
338 automatically setup .git/objects/info/alternates to
339 obtain objects from the reference repository. Using
340 an already existing repository as an alternate will
341 require less objects to be copied from the repository
342 being cloned, reducing network and local storage costs.
343</p>
344</dd>
345<dt>
Junio C Hamano1a4e8412005-12-27 08:17:23346--quiet
347</dt>
348<dt>
349-q
350</dt>
351<dd>
352<p>
353 Operate quietly. This flag is passed to "rsync" and
Junio C Hamano97f518c2006-06-22 19:49:35354 "git-fetch-pack" commands when given.
Junio C Hamano1a4e8412005-12-27 08:17:23355</p>
356</dd>
357<dt>
358-n
359</dt>
360<dd>
361<p>
362 No checkout of HEAD is performed after the clone is complete.
363</p>
364</dd>
365<dt>
Junio C Hamanoe663a7a2006-01-25 12:37:28366--bare
Junio C Hamano38064d52006-01-15 10:13:49367</dt>
368<dd>
369<p>
Junio C Hamanoe663a7a2006-01-25 12:37:28370 Make a <em>bare</em> GIT repository. That is, instead of
Junio C Hamano38064d52006-01-15 10:13:49371 creating <tt>&lt;directory&gt;</tt> and placing the administrative
372 files in <tt>&lt;directory&gt;/.git</tt>, make the <tt>&lt;directory&gt;</tt>
Junio C Hamanoe663a7a2006-01-25 12:37:28373 itself the <tt>$GIT_DIR</tt>. This implies <tt>-n</tt> option. When
374 this option is used, neither the <tt>origin</tt> branch nor the
375 default <tt>remotes/origin</tt> file is created.
Junio C Hamano38064d52006-01-15 10:13:49376</p>
377</dd>
378<dt>
Junio C Hamano1a4e8412005-12-27 08:17:23379-o &lt;name&gt;
380</dt>
381<dd>
382<p>
383 Instead of using the branch name <em>origin</em> to keep track
384 of the upstream repository, use &lt;name&gt; instead. Note
385 that the shorthand name stored in <tt>remotes/origin</tt> is
386 not affected, but the local branch name to pull the
387 remote <tt>master</tt> branch into is.
388</p>
389</dd>
390<dt>
391--upload-pack &lt;upload-pack&gt;
392</dt>
393<dt>
394-u &lt;upload-pack&gt;
395</dt>
396<dd>
397<p>
398 When given, and the repository to clone from is handled
Junio C Hamano97f518c2006-06-22 19:49:35399 by <em>git-fetch-pack</em>, <em>--exec=&lt;upload-pack&gt;</em> is passed to
Junio C Hamano1a4e8412005-12-27 08:17:23400 the command to specify non-default path for the command
401 run on the other end.
402</p>
403</dd>
404<dt>
Junio C Hamanof31d9f52006-05-28 20:58:09405--template=&lt;template_directory&gt;
406</dt>
407<dd>
408<p>
409 Specify the directory from which templates will be used;
410 if unset the templates are taken from the installation
411 defined default, typically <tt>/usr/share/git-core/templates</tt>.
412</p>
413</dd>
414<dt>
Junio C Hamano8db10ef2006-06-09 04:31:57415--use-separate-remote
416</dt>
417<dd>
418<p>
Junio C Hamano4220baa2006-06-10 09:29:27419 Save remotes heads under <tt>$GIT_DIR/remotes/origin/</tt> instead
420 of <tt>$GIT_DIR/refs/heads/</tt>. Only the master branch is saved
Junio C Hamano8db10ef2006-06-09 04:31:57421 in the latter.
422</p>
423</dd>
424<dt>
Junio C Hamano1a4e8412005-12-27 08:17:23425&lt;repository&gt;
426</dt>
427<dd>
428<p>
429 The (possibly remote) repository to clone from. It can
430 be any URL git-fetch supports.
431</p>
432</dd>
433<dt>
434&lt;directory&gt;
435</dt>
436<dd>
437<p>
438 The name of a new directory to clone into. The "humanish"
439 part of the source repository is used if no directory is
440 explicitly given ("repo" for "/path/to/repo.git" and "foo"
441 for "host.xz:foo/.git"). Cloning into an existing directory
442 is not allowed.
443</p>
444</dd>
445</dl>
Junio C Hamano1bb569e2006-05-05 23:14:25446</div>
447<h2>Examples</h2>
448<div class="sectionbody">
Junio C Hamano1a4e8412005-12-27 08:17:23449<dl>
450<dt>
451Clone from upstream
452</dt>
453<dd>
454<div class="listingblock">
455<div class="content">
456<pre><tt>$ git clone git://git.kernel.org/pub/scm/.../linux-2.6 my2.6
457$ cd my2.6
458$ make</tt></pre>
459</div></div>
460</dd>
461<dt>
462Make a local clone that borrows from the current directory, without checking things out
463</dt>
464<dd>
465<div class="listingblock">
466<div class="content">
467<pre><tt>$ git clone -l -s -n . ../copy
468$ cd copy
469$ git show-branch</tt></pre>
470</div></div>
471</dd>
Junio C Hamano38064d52006-01-15 10:13:49472<dt>
Junio C Hamanof50bfec2006-04-19 09:44:12473Clone from upstream while borrowing from an existing local directory
474</dt>
475<dd>
476<div class="listingblock">
477<div class="content">
478<pre><tt>$ git clone --reference my2.6 \
479 git://git.kernel.org/pub/scm/.../linux-2.7 \
480 my2.7
481$ cd my2.7</tt></pre>
482</div></div>
483</dd>
484<dt>
Junio C Hamanoe663a7a2006-01-25 12:37:28485Create a bare repository to publish your changes to the public
Junio C Hamano38064d52006-01-15 10:13:49486</dt>
487<dd>
488<div class="listingblock">
489<div class="content">
Junio C Hamanoe663a7a2006-01-25 12:37:28490<pre><tt>$ git clone --bare -l /home/proj/.git /pub/scm/proj.git</tt></pre>
Junio C Hamano38064d52006-01-15 10:13:49491</div></div>
492</dd>
493<dt>
494Create a repository on the kernel.org machine that borrows from Linus
495</dt>
496<dd>
497<div class="listingblock">
498<div class="content">
Junio C Hamanoe663a7a2006-01-25 12:37:28499<pre><tt>$ git clone --bare -l -s /pub/scm/.../torvalds/linux-2.6.git \
Junio C Hamano38064d52006-01-15 10:13:49500 /pub/scm/.../me/subsys-2.6.git</tt></pre>
501</div></div>
502</dd>
Junio C Hamano1a4e8412005-12-27 08:17:23503</dl>
504</div>
505<h2>Author</h2>
506<div class="sectionbody">
507<p>Written by Linus Torvalds &lt;torvalds@osdl.org&gt;</p>
508</div>
509<h2>Documentation</h2>
510<div class="sectionbody">
511<p>Documentation by Junio C Hamano and the git-list &lt;git@vger.kernel.org&gt;.</p>
512</div>
513<h2>GIT</h2>
514<div class="sectionbody">
515<p>Part of the <a href="git.html">git(7)</a> suite</p>
516</div>
517<div id="footer">
518<div id="footer-text">
Junio C Hamano7ccb9fd2006-07-15 01:38:40519Last updated 15-Jul-2006 01:37:37 UTC
Junio C Hamano1a4e8412005-12-27 08:17:23520</div>
521</div>
522</body>
523</html>