Merge branch 'lt/logopt' into next
[gitweb.git] / Documentation / git-clone.txt
index ffa4fb0a03b54526743178e71b9956e50c8d298d..9ac54c282c3fe5ef9182f2829ef51cf8de8a1475 100644 (file)
@@ -3,13 +3,13 @@ git-clone(1)
 
 NAME
 ----
-git-clone - Clones a repository.
+git-clone - Clones a repository
 
 
 SYNOPSIS
 --------
 [verse]
-'git-clone' [-l [-s]] [-q] [-n] [-u <upload-pack>]
+'git-clone' [-l [-s]] [-q] [-n] [--bare] [-o <name>] [-u <upload-pack>]
          <repository> [<directory>]
 
 DESCRIPTION
@@ -58,6 +58,21 @@ OPTIONS
 -n::
        No checkout of HEAD is performed after the clone is complete.
 
+--bare::
+       Make a 'bare' GIT repository.  That is, instead of
+       creating `<directory>` and placing the administrative
+       files in `<directory>/.git`, make the `<directory>`
+       itself the `$GIT_DIR`. This implies `-n` option.  When
+       this option is used, neither the `origin` branch nor the
+       default `remotes/origin` file is created.
+
+-o <name>::
+       Instead of using the branch name 'origin' to keep track
+       of the upstream repository, use <name> instead.  Note
+       that the shorthand name stored in `remotes/origin` is
+       not affected, but the local branch name to pull the
+       remote `master` branch into is.
+
 --upload-pack <upload-pack>::
 -u <upload-pack>::
        When given, and the repository to clone from is handled
@@ -96,6 +111,22 @@ $ cd copy
 $ git show-branch
 ------------
 
+
+Create a bare repository to publish your changes to the public::
++
+------------
+$ git clone --bare -l /home/proj/.git /pub/scm/proj.git
+------------
+
+
+Create a repository on the kernel.org machine that borrows from Linus::
++
+------------
+$ git clone --bare -l -s /pub/scm/.../torvalds/linux-2.6.git \
+    /pub/scm/.../me/subsys-2.6.git
+------------
+
+
 Author
 ------
 Written by Linus Torvalds <torvalds@osdl.org>