aboutsummaryrefslogtreecommitdiff
path: root/Documentation/git-clone.adoc
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2026-02-25 11:54:16 -0800
committerJunio C Hamano <gitster@pobox.com>2026-02-25 11:54:17 -0800
commit6b5ad01886b9492d8662509604277fc88e705dcb (patch)
tree1ab6013fb7545ee8658bc3b555f567ad3de3519f /Documentation/git-clone.adoc
parente8c6456592e6601a1118e1c29a788a09ada75a0c (diff)
parentef2f1845ec4b683df791bfd956f551b096a38009 (diff)
downloadgit-6b5ad01886b9492d8662509604277fc88e705dcb.tar.xz
Merge branch 'cc/lop-filter-auto'
"auto filter" logic for large-object promisor remote. * cc/lop-filter-auto: fetch-pack: wire up and enable auto filter logic promisor-remote: change promisor_remote_reply()'s signature promisor-remote: keep advertised filters in memory list-objects-filter-options: support 'auto' mode for --filter doc: fetch: document `--filter=<filter-spec>` option fetch: make filter_options local to cmd_fetch() clone: make filter_options local to cmd_clone() promisor-remote: allow a client to store fields promisor-remote: refactor initialising field lists
Diffstat (limited to 'Documentation/git-clone.adoc')
-rw-r--r--Documentation/git-clone.adoc25
1 files changed, 20 insertions, 5 deletions
diff --git a/Documentation/git-clone.adoc b/Documentation/git-clone.adoc
index 959ca40733..b6e1f8ada2 100644
--- a/Documentation/git-clone.adoc
+++ b/Documentation/git-clone.adoc
@@ -189,11 +189,26 @@ NOTE: see the NOTE for the `--shared` option, and also the
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].
+ the partial clone filter.
++
+If `--filter=auto` is used the filter specification is determined
+automatically through the 'promisor-remote' protocol (see
+linkgit:gitprotocol-v2[5]) by combining the filter specifications
+advertised by the server for the promisor remotes that the client
+accepts (see the `promisor.acceptFromServer` configuration option in
+linkgit:git-config[1]). This allows the server to suggest the optimal
+filter for the available promisor remotes.
++
+As with other filter specifications, the "auto" value is persisted in
+the configuration. This ensures that future fetches will continue to
+adapt to the server's current recommendation.
++
+For details on all other available filter specifications, see the
+`--filter=<filter-spec>` option in linkgit:git-rev-list[1].
++
+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>_.
`--also-filter-submodules`::
Also apply the partial clone filter to any submodules in the repository.