mirror of
https://github.com/git/git.git
synced 2024-11-28 04:23:30 +08:00
Merge branch 'jn/experimental-opts-into-proto-v2'
"feature.experimental" configuration variable is to let volunteers easily opt into a set of newer features, which use of the v2 transport protocol is now a part of. * jn/experimental-opts-into-proto-v2: config: let feature.experimental imply protocol.version=2
This commit is contained in:
commit
51b4708811
@ -22,6 +22,10 @@ existing commit-graph file(s). Occasionally, these files will merge and the
|
||||
write may take longer. Having an updated commit-graph file helps performance
|
||||
of many Git commands, including `git merge-base`, `git push -f`, and
|
||||
`git log --graph`.
|
||||
+
|
||||
* `protocol.version=2` speeds up fetches from repositories with many refs by
|
||||
allowing the client to specify which refs to list before the server lists
|
||||
them.
|
||||
|
||||
feature.manyFiles::
|
||||
Enable config options that optimize for repos with many files in the
|
||||
|
@ -48,7 +48,8 @@ protocol.version::
|
||||
If set, clients will attempt to communicate with a server
|
||||
using the specified protocol version. If the server does
|
||||
not support it, communication falls back to version 0.
|
||||
If unset, the default is `0`.
|
||||
If unset, the default is `0`, unless `feature.experimental`
|
||||
is enabled, in which case the default is `2`.
|
||||
Supported versions:
|
||||
+
|
||||
--
|
||||
|
@ -17,6 +17,7 @@ static enum protocol_version parse_protocol_version(const char *value)
|
||||
enum protocol_version get_protocol_version_config(void)
|
||||
{
|
||||
const char *value;
|
||||
int val;
|
||||
const char *git_test_k = "GIT_TEST_PROTOCOL_VERSION";
|
||||
const char *git_test_v;
|
||||
|
||||
@ -30,6 +31,9 @@ enum protocol_version get_protocol_version_config(void)
|
||||
return version;
|
||||
}
|
||||
|
||||
if (!git_config_get_bool("feature.experimental", &val) && val)
|
||||
return protocol_v2;
|
||||
|
||||
git_test_v = getenv(git_test_k);
|
||||
if (git_test_v && *git_test_v) {
|
||||
enum protocol_version env = parse_protocol_version(git_test_v);
|
||||
|
Loading…
Reference in New Issue
Block a user