Documentation: describe shallow repository
authorJunio C Hamano <junkio@cox.net>
Wed, 17 Jan 2007 18:53:31 +0000 (10:53 -0800)
committerJunio C Hamano <junkio@cox.net>
Wed, 17 Jan 2007 18:53:31 +0000 (10:53 -0800)
Signed-off-by: Junio C Hamano <junkio@cox.net>
Documentation/glossary.txt
Documentation/repository-layout.txt
index bc917bbac3b21eff1baa70b24c689ff11f5a4323..d20eb6270cd795ab61b281154a7e24070519b7fb 100644 (file)
@@ -286,6 +286,18 @@ SCM::
 SHA1::
        Synonym for object name.
 
+shallow repository::
+       A shallow repository has an incomplete history some of
+       whose commits have parents cauterized away (in other
+       words, git is told to pretend that these commits do not
+       have the parents, even though they are recorded in the
+       commit object).  This is sometimes useful when you are
+       interested only in the recent history of a project even
+       though the real history recorded in the upstream is
+       much larger.  A shallow repository is created by giving
+       `--depth` option to gitlink:git-clone[1], and its
+       history can be later deepened with gitlink:git-fetch[1].
+
 symref::
        Symbolic reference: instead of containing the SHA1 id itself, it
        is of the format 'ref: refs/some/thing' and when referenced, it
index 7c8c14141993d704d229bff8ccd08a52e5b78fa3..f9370d25bb25842c6d3f58a89a6d3f6c0022b81f 100644 (file)
@@ -18,6 +18,8 @@ could have only commit objects without associated blobs and
 trees this way, for example.  A repository with this kind of
 incomplete object store is not suitable to be published to the
 outside world but sometimes useful for private repository.
+. You also could have an incomplete but locally usable repository
+by cloning shallowly.  See gitlink:git-clone[1].
 . You can be using `objects/info/alternates` mechanism, or
 `$GIT_ALTERNATE_OBJECT_DIRECTORIES` mechanism to 'borrow'
 objects from other object stores.  A repository with this kind
@@ -162,3 +164,9 @@ logs/refs/heads/`name`::
 
 logs/refs/tags/`name`::
        Records all changes made to the tag named `name`.
+
+shallow::
+       This is similar to `info/grafts` but is internally used
+       and maintained by shallow clone mechanism.  See `--depth`
+       option to gitlink:git-clone[1] and gitlink:git-fetch[1].
+