Code

Merge branch 'jc/maint-combine-diff-pre-context'
[git.git] / Documentation / git-clone.txt
index 227f092e268497aad9c16cff4d796dabf60401de..7973e6af4c2aa31ea9ae9b91b4c4cd5ee2256762 100644 (file)
@@ -12,7 +12,7 @@ SYNOPSIS
 'git-clone' [--template=<template_directory>]
          [-l] [-s] [--no-hardlinks] [-q] [-n] [--bare]
          [-o <name>] [-u <upload-pack>] [--reference <repository>]
 'git-clone' [--template=<template_directory>]
          [-l] [-s] [--no-hardlinks] [-q] [-n] [--bare]
          [-o <name>] [-u <upload-pack>] [--reference <repository>]
-         [--depth <depth>] <repository> [<directory>]
+         [--depth <depth>] [--] <repository> [<directory>]
 
 DESCRIPTION
 -----------
 
 DESCRIPTION
 -----------
@@ -62,14 +62,28 @@ 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[1])
+which automatically call 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
        automatically setup .git/objects/info/alternates to
        obtain objects from the reference repository.  Using
        an already existing repository as an alternate will
 
 --reference <repository>::
        If the reference repository is on the local machine
        automatically setup .git/objects/info/alternates to
        obtain objects from the reference repository.  Using
        an already existing repository as an alternate will
-       require less objects to be copied from the repository
+       require fewer objects to be copied from the repository
        being cloned, reducing network and local storage costs.
        being cloned, reducing network and local storage costs.
++
+*NOTE*: see NOTE to --shared option.
 
 --quiet::
 -q::
 
 --quiet::
 -q::
@@ -111,11 +125,11 @@ OPTIONS
 
 --depth <depth>::
        Create a 'shallow' clone with a history truncated to the
 
 --depth <depth>::
        Create a 'shallow' clone with a history truncated to the
-       specified number of revs.  A shallow repository has
+       specified number of revisions.  A shallow repository has a
        number of limitations (you cannot clone or fetch from
        it, nor push from nor into it), but is adequate if you
        number of limitations (you cannot clone or fetch from
        it, nor push from nor into it), but is adequate if you
-       want to only look at near the tip of a large project
-       with a long history, and would want to send in fixes
+       are only interested in the recent history of a large project
+       with a long history, and would want to send in fixes
        as patches.
 
 <repository>::
        as patches.
 
 <repository>::
@@ -130,6 +144,7 @@ OPTIONS
        for "host.xz:foo/.git").  Cloning into an existing directory
        is not allowed.
 
        for "host.xz:foo/.git").  Cloning into an existing directory
        is not allowed.
 
+:git-clone: 1
 include::urls.txt[]
 
 Examples
 include::urls.txt[]
 
 Examples
@@ -190,4 +205,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