Hi, The Git users at $DAYJOB have been using protocol v2 as a default for ~1.5 years now and others have been also reporting good experiences with it, so it seems like a good time to propose bumping the default version. It produces a significant performance improvement when fetching from repositories with many refs, such as https://chromium.googlesource.com/chromium/src. This only affects the client, not the server. (The server already defaults to supporting protocol v2.) This could go in 2.25 (most of the "next" population is likely already using protocol.version=2, so the -rc period would be one of the better ways to expand the user population using this) or could cook in "next" for a cycle. Either is fine by me. Thoughts of all kinds welcome, as always. Jonathan Nieder (5): fetch test: use more robust test for filtered objects config doc: protocol.version is not experimental test: request GIT_TEST_PROTOCOL_VERSION=0 when appropriate protocol test: let protocol.version override GIT_TEST_PROTOCOL_VERSION fetch: default to protocol version 2 Documentation/config/protocol.txt | 9 ++++----- protocol.c | 11 +++++------ t/README | 4 ++-- t/t5400-send-pack.sh | 2 +- t/t5500-fetch-pack.sh | 23 ++++++++++++++++------- t/t5512-ls-remote.sh | 10 +++++----- t/t5515-fetch-merge-logic.sh | 3 ++- t/t5516-fetch-push.sh | 12 ++++++------ t/t5539-fetch-http-shallow.sh | 2 +- t/t5541-http-push-smart.sh | 4 ++-- t/t5551-http-fetch-smart.sh | 12 ++++++------ t/t5552-skipping-fetch-negotiator.sh | 2 +- t/t5700-protocol-v1.sh | 3 ++- t/t7406-submodule-update.sh | 2 +- 14 files changed, 54 insertions(+), 45 deletions(-) base-commit: 12029dc57db23baef008e77db1909367599210ee