Code

Start 1.6.1 cycle
[git.git] / Documentation / git-clone.txt
index c90bcece24c0fcbf9513af7808f6d0d13846c528..0e14e732fd470b7f48882c9959235785df19b7b0 100644 (file)
@@ -9,8 +9,8 @@ git-clone - Clone a repository into a new directory
 SYNOPSIS
 --------
 [verse]
 SYNOPSIS
 --------
 [verse]
-'git-clone' [--template=<template_directory>]
-         [-l] [-s] [--no-hardlinks] [-q] [-n] [--bare]
+'git clone' [--template=<template_directory>]
+         [-l] [-s] [--no-hardlinks] [-q] [-n] [--bare] [--mirror]
          [-o <name>] [-u <upload-pack>] [--reference <repository>]
          [--depth <depth>] [--] <repository> [<directory>]
 
          [-o <name>] [-u <upload-pack>] [--reference <repository>]
          [--depth <depth>] [--] <repository> [<directory>]
 
@@ -62,6 +62,18 @@ OPTIONS
        .git/objects/info/alternates to share the objects
        with the source repository.  The resulting repository
        starts out without any object of its own.
        .git/objects/info/alternates to share the objects
        with the source repository.  The resulting repository
        starts out without any object of its own.
++
+*NOTE*: this is a possibly dangerous operation; do *not* use
+it unless you understand what it does. If you clone your
+repository using this option and then delete branches (or use any
+other git command that makes any existing commit unreferenced) in the
+source repository, some objects may become unreferenced (or dangling).
+These objects may be removed by normal git operations (such as 'git-commit')
+which automatically call `git gc --auto`. (See linkgit:git-gc[1].)
+If these objects are removed and were referenced by the cloned repository,
+then the cloned repository will become corrupt.
+
+
 
 --reference <repository>::
        If the reference repository is on the local machine
 
 --reference <repository>::
        If the reference repository is on the local machine
@@ -70,11 +82,13 @@ OPTIONS
        an already existing repository as an alternate will
        require fewer objects to be copied from the repository
        being cloned, reducing network and local storage costs.
        an already existing repository as an alternate will
        require fewer objects to be copied from the repository
        being cloned, reducing network and local storage costs.
++
+*NOTE*: see NOTE to --shared option.
 
 --quiet::
 -q::
 
 --quiet::
 -q::
-       Operate quietly.  This flag is passed to "rsync" and
-       "git-fetch-pack" commands when given.
+       Operate quietly.  This flag is also passed to the `rsync'
+       command when given.
 
 --no-checkout::
 -n::
 
 --no-checkout::
 -n::
@@ -92,6 +106,9 @@ OPTIONS
        used, neither remote-tracking branches nor the related
        configuration variables are created.
 
        used, neither remote-tracking branches nor the related
        configuration variables are created.
 
+--mirror::
+       Set up a mirror of the remote repository.  This implies --bare.
+
 --origin <name>::
 -o <name>::
        Instead of using the remote name 'origin' to keep track
 --origin <name>::
 -o <name>::
        Instead of using the remote name 'origin' to keep track
@@ -99,9 +116,8 @@ OPTIONS
 
 --upload-pack <upload-pack>::
 -u <upload-pack>::
 
 --upload-pack <upload-pack>::
 -u <upload-pack>::
-       When given, and the repository to clone from is handled
-       by 'git-fetch-pack', '--exec=<upload-pack>' is passed to
-       the command to specify non-default path for the command
+       When given, and the repository to clone from is accessed
+       via ssh, this specifies a non-default path for the command
        run on the other end.
 
 --template=<template_directory>::
        run on the other end.
 
 --template=<template_directory>::
@@ -191,4 +207,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
 
 GIT
 ---
 
 GIT
 ---
-Part of the gitlink:git[7] suite
+Part of the linkgit:git[1] suite