git-commit-vandalism/builtin/update-server-info.c
Nguyễn Thái Ngọc Duy da591a7f4b update-server-info: respect core.bigfilethreshold
This command indirectly calls check_sha1_signature() (add_info_ref ->
deref_tag -> parse_object -> ..) , which may put whole blob in memory
if the blob's size is under core.bigfilethreshold. As config is not
read, the threshold is always 512MB. Respect user settings here.

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-03-07 09:07:39 -08:00

26 lines
612 B
C

#include "cache.h"
#include "builtin.h"
#include "parse-options.h"
static const char * const update_server_info_usage[] = {
"git update-server-info [--force]",
NULL
};
int cmd_update_server_info(int argc, const char **argv, const char *prefix)
{
int force = 0;
struct option options[] = {
OPT__FORCE(&force, "update the info files from scratch"),
OPT_END()
};
git_config(git_default_config, NULL);
argc = parse_options(argc, argv, prefix, options,
update_server_info_usage, 0);
if (argc > 0)
usage_with_options(update_server_info_usage, options);
return !!update_server_info(force);
}