summaryrefslogtreecommitdiff
path: root/Documentation/technical/partial-clone.txt
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2020-09-03 19:37:04 (GMT)
committerJunio C Hamano <gitster@pobox.com>2020-09-03 19:37:04 (GMT)
commitb4100f366c1e5adf3a254cdc6f832aa1a4461053 (patch)
tree0cd253a268b0b06a09dd3cf17e60b666d67632d5 /Documentation/technical/partial-clone.txt
parent3f02c0ad360d96e8dbba92f97b42ebbaa4319db1 (diff)
parentdb3c293ecded67128b74a03f01e65c6799ff1116 (diff)
downloadgit-b4100f366c1e5adf3a254cdc6f832aa1a4461053.zip
git-b4100f366c1e5adf3a254cdc6f832aa1a4461053.tar.gz
git-b4100f366c1e5adf3a254cdc6f832aa1a4461053.tar.bz2
Merge branch 'jt/lazy-fetch'
Updates to on-demand fetching code in lazily cloned repositories. * jt/lazy-fetch: fetch: no FETCH_HEAD display if --no-write-fetch-head fetch-pack: remove no_dependents code promisor-remote: lazy-fetch objects in subprocess fetch-pack: do not lazy-fetch during ref iteration fetch: only populate existing_refs if needed fetch: avoid reading submodule config until needed fetch: allow refspecs specified through stdin negotiator/noop: add noop fetch negotiator
Diffstat (limited to 'Documentation/technical/partial-clone.txt')
-rw-r--r--Documentation/technical/partial-clone.txt13
1 files changed, 3 insertions, 10 deletions
diff --git a/Documentation/technical/partial-clone.txt b/Documentation/technical/partial-clone.txt
index b9e17e7..0780d30 100644
--- a/Documentation/technical/partial-clone.txt
+++ b/Documentation/technical/partial-clone.txt
@@ -171,20 +171,13 @@ additional flag.
Fetching Missing Objects
------------------------
-- Fetching of objects is done using the existing transport mechanism using
- transport_fetch_refs(), setting a new transport option
- TRANS_OPT_NO_DEPENDENTS to indicate that only the objects themselves are
- desired, not any object that they refer to.
-+
-Because some transports invoke fetch_pack() in the same process, fetch_pack()
-has been updated to not use any object flags when the corresponding argument
-(no_dependents) is set.
+- Fetching of objects is done by invoking a "git fetch" subprocess.
- The local repository sends a request with the hashes of all requested
- objects as "want" lines, and does not perform any packfile negotiation.
+ objects, and does not perform any packfile negotiation.
It then receives a packfile.
-- Because we are reusing the existing fetch-pack mechanism, fetching
+- Because we are reusing the existing fetch mechanism, fetching
currently fetches all objects referred to by the requested objects, even
though they are not necessary.