]> git.ipfire.org Git - thirdparty/git.git/commit
clone: unbundle the advertised bundles
authorDerrick Stolee <derrickstolee@github.com>
Thu, 22 Dec 2022 15:14:17 +0000 (15:14 +0000)
committerJunio C Hamano <gitster@pobox.com>
Sun, 25 Dec 2022 07:24:24 +0000 (16:24 +0900)
commit876094ac16870727207e6afc0b26060101a52359
tree54e5ac961903b138d57997670589c370c54590bb
parent12b0a14b9e5f140a9a4d5a3e3c47fae00a53c6fc
clone: unbundle the advertised bundles

A previous change introduced the transport methods to acquire a bundle
list from the 'bundle-uri' protocol v2 command, when advertised _and_
when the client has chosen to enable the feature.

Teach Git to download and unbundle the data advertised by those bundles
during 'git clone'. This takes place between the ref advertisement and
the object data download, and stateful connections will linger while
the client downloads bundles. In the future, we should consider closing
the remote connection during this process.

Also, since the --bundle-uri option exists, we do not want to mix the
advertised bundles with the user-specified bundles.

Signed-off-by: Derrick Stolee <derrickstolee@github.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/clone.c
t/lib-bundle-uri-protocol.sh
t/t5601-clone.sh