提交 e28714c5 编写于 作者: J Junio C Hamano

Consolidate {receive,fetch}.unpackLimit

This allows transfer.unpackLimit to specify what these two
configuration variables want to set.

We would probably want to deprecate the two separate variables,
as I do not see much point in specifying them independently.
Signed-off-by: NJunio C Hamano <junkio@cox.net>
上级 af7cf268
......@@ -488,3 +488,8 @@ receive.denyNonFastForwards::
even if that push is forced. This configuration variable is
set when initializing a shared repository.
transfer.unpackLimit::
When `fetch.unpackLimit` or `receive.unpackLimit` are
not set, the value of this variable is used instead.
......@@ -8,6 +8,8 @@
#include "sideband.h"
static int keep_pack;
static int transfer_unpack_limit = -1;
static int fetch_unpack_limit = -1;
static int unpack_limit = 100;
static int quiet;
static int verbose;
......@@ -645,7 +647,12 @@ static int remove_duplicates(int nr_heads, char **heads)
static int fetch_pack_config(const char *var, const char *value)
{
if (strcmp(var, "fetch.unpacklimit") == 0) {
unpack_limit = git_config_int(var, value);
fetch_unpack_limit = git_config_int(var, value);
return 0;
}
if (strcmp(var, "transfer.unpacklimit") == 0) {
transfer_unpack_limit = git_config_int(var, value);
return 0;
}
......@@ -666,6 +673,11 @@ int main(int argc, char **argv)
setup_ident();
git_config(fetch_pack_config);
if (0 <= transfer_unpack_limit)
unpack_limit = transfer_unpack_limit;
else if (0 <= fetch_unpack_limit)
unpack_limit = fetch_unpack_limit;
nr_heads = 0;
heads = NULL;
for (i = 1; i < argc; i++) {
......
......@@ -10,6 +10,8 @@
static const char receive_pack_usage[] = "git-receive-pack <git-dir>";
static int deny_non_fast_forwards = 0;
static int receive_unpack_limit = -1;
static int transfer_unpack_limit = -1;
static int unpack_limit = 100;
static int report_status;
......@@ -18,21 +20,22 @@ static int capabilities_sent;
static int receive_pack_config(const char *var, const char *value)
{
git_default_config(var, value);
if (strcmp(var, "receive.denynonfastforwards") == 0)
{
if (strcmp(var, "receive.denynonfastforwards") == 0) {
deny_non_fast_forwards = git_config_bool(var, value);
return 0;
}
if (strcmp(var, "receive.unpacklimit") == 0)
{
unpack_limit = git_config_int(var, value);
if (strcmp(var, "receive.unpacklimit") == 0) {
receive_unpack_limit = git_config_int(var, value);
return 0;
}
return 0;
if (strcmp(var, "transfer.unpacklimit") == 0) {
transfer_unpack_limit = git_config_int(var, value);
return 0;
}
return git_default_config(var, value);
}
static int show_ref(const char *path, const unsigned char *sha1, int flag, void *cb_data)
......@@ -431,6 +434,11 @@ int main(int argc, char **argv)
ignore_missing_committer_name();
git_config(receive_pack_config);
if (0 <= transfer_unpack_limit)
unpack_limit = transfer_unpack_limit;
else if (0 <= receive_unpack_limit)
unpack_limit = receive_unpack_limit;
write_head_info();
/* EOF */
......
......@@ -98,7 +98,7 @@ pull_to_client () {
mkdir client &&
cd client &&
git-init 2>> log2.txt &&
git repo-config fetch.unpacklimit 0
git repo-config transfer.unpacklimit 0
)
add A1
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册