Merge pull request #2375 from assarbad/reintroduce-sideband-config

Config option to disable side-band-64k for transport
This commit is contained in:
Johannes Schindelin 2019-10-30 09:18:45 +01:00 коммит произвёл Matthew John Cheetham
Родитель f7cd01e756 cf04b0ce44
Коммит 8d433f6751
3 изменённых файлов: 20 добавлений и 1 удалений

Просмотреть файл

@ -507,6 +507,8 @@ include::config/safe.txt[]
include::config/sendemail.txt[]
include::config/sendpack.txt[]
include::config/sequencer.txt[]
include::config/showbranch.txt[]

Просмотреть файл

@ -0,0 +1,5 @@
sendpack.sideband::
Allows to disable the side-band-64k capability for send-pack even
when it is advertised by the server. Makes it possible to work
around a limitation in the git for windows implementation together
with the dump git protocol. Defaults to true.

Просмотреть файл

@ -45,6 +45,16 @@ int option_parse_push_signed(const struct option *opt,
die("bad %s argument: %s", opt->long_name, arg);
}
static int config_use_sideband = 1;
static int send_pack_config(const char *var, const char *value, void *unused)
{
if (!strcmp("sendpack.sideband", var))
config_use_sideband = git_config_bool(var, value);
return 0;
}
static void feed_object(const struct object_id *oid, FILE *fh, int negative)
{
if (negative &&
@ -503,6 +513,8 @@ int send_pack(struct send_pack_args *args,
return 0;
}
git_config(send_pack_config, NULL);
git_config_get_bool("push.negotiate", &push_negotiate);
if (push_negotiate)
get_commons_through_negotiation(args->url, remote_refs, &commons);
@ -521,7 +533,7 @@ int send_pack(struct send_pack_args *args,
allow_deleting_refs = 1;
if (server_supports("ofs-delta"))
args->use_ofs_delta = 1;
if (server_supports("side-band-64k"))
if (config_use_sideband && server_supports("side-band-64k"))
use_sideband = 1;
if (server_supports("quiet"))
quiet_supported = 1;