]> git.ipfire.org Git - thirdparty/git.git/commitdiff
clone: document --filter options
authorDerrick Stolee <dstolee@microsoft.com>
Sun, 22 Mar 2020 19:50:06 +0000 (19:50 +0000)
committerJunio C Hamano <gitster@pobox.com>
Sun, 22 Mar 2020 23:38:30 +0000 (16:38 -0700)
It turns out that the "--filter=<filter-spec>" option is not
documented anywhere in the "git clone" page, and instead is
detailed carefully in "git rev-list" where it serves a
different purpose.

Add a small bit about this option in the documentation. It
would be worth some time to create a subsection in the "git clone"
documentation about partial clone as a concept and how it can be
a surprising experience. For example, "git checkout" will likely
trigger a pack download.

Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/git-clone.txt

index bf24f1813adc3dd9173dfaa9fd845ba80a189eb9..08d6045c4a835dd5032c594dfc112b4adf4c6d5e 100644 (file)
@@ -15,7 +15,8 @@ SYNOPSIS
          [--dissociate] [--separate-git-dir <git dir>]
          [--depth <depth>] [--[no-]single-branch] [--no-tags]
          [--recurse-submodules[=<pathspec>]] [--[no-]shallow-submodules]
-         [--[no-]remote-submodules] [--jobs <n>] [--sparse] [--] <repository>
+         [--[no-]remote-submodules] [--jobs <n>] [--sparse]
+         [--filter=<filter>] [--] <repository>
          [<directory>]
 
 DESCRIPTION
@@ -162,6 +163,16 @@ objects from the source repository into a pack in the cloned repository.
        of the repository. The sparse-checkout file can be
        modified to grow the working directory as needed.
 
+--filter=<filter-spec>::
+       Use the partial clone feature and request that the server sends
+       a subset of reachable objects according to a given object filter.
+       When using `--filter`, the supplied `<filter-spec>` is used for
+       the partial clone filter. For example, `--filter=blob:none` will
+       filter out all blobs (file contents) until needed by Git. Also,
+       `--filter=blob:limit=<size>` will filter out all blobs of size
+       at least `<size>`. For more details on filter specifications, see
+       the `--filter` option in linkgit:git-rev-list[1].
+
 --mirror::
        Set up a mirror of the source repository.  This implies `--bare`.
        Compared to `--bare`, `--mirror` not only maps local branches of the