From: Jeff Hostetler <jeffhost@xxxxxxxxxxxxx> This is V6 of part 3 of partial clone. It assumes that V6 of parts 1 and 2 are already present. This version is refactors and reorders commits to better combine new functionality and tests. It contains 3 fixup commits that should be squashed after some discussion. Jeff Hostetler (9): upload-pack: add object filtering for partial clone fetch-pack, index-pack, transport: partial clone fetch-pack: add --no-filter fetch: support filters fixup: fetch: update error messages from --blob-max-bytes to --filter fixup: fetch: update --blob-max-bytes to --fitler fixup: connected: conditionally pass --exclude-promisor-objects to rev-list partial-clone: define partial clone settings in config t5616: end-to-end tests for partial clone Jonathan Tan (5): fetch-pack: test support excluding large blobs fetch: refactor calculation of remote list clone: partial clone unpack-trees: batch fetching of missing blobs fetch-pack: restore save_commit_buffer after use Documentation/config.txt | 4 + Documentation/technical/pack-protocol.txt | 8 ++ Documentation/technical/protocol-capabilities.txt | 8 ++ builtin/clone.c | 22 +++- builtin/fetch-pack.c | 8 ++ builtin/fetch.c | 33 ++++-- cache.h | 1 + config.c | 5 + connected.c | 2 + environment.c | 1 + fetch-object.c | 26 ++++- fetch-object.h | 5 + fetch-pack.c | 17 +++ fetch-pack.h | 2 + list-objects-filter-options.c | 90 +++++++++++++--- list-objects-filter-options.h | 6 ++ remote-curl.c | 6 ++ t/t5500-fetch-pack.sh | 63 +++++++++++ t/t5601-clone.sh | 101 +++++++++++++++++ t/t5616-partial-clone.sh | 125 ++++++++++++++++++++++ transport-helper.c | 5 + transport.c | 4 + transport.h | 5 + unpack-trees.c | 22 ++++ upload-pack.c | 31 +++++- 25 files changed, 572 insertions(+), 28 deletions(-) create mode 100755 t/t5616-partial-clone.sh -- 2.9.3