Move deny_non_fast_forwards handling completely into receive-pack.
The 'receive.denynonfastforwards' option has nothing to do with the repository format version. Since receive-pack already uses git_config to initialize itself before executing any updates we can use the normal configuration strategy and isolate the receive specific variables away from the core variables. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:

committed by
Junio C Hamano

parent
79a65697be
commit
6fb75bed5c
@ -9,11 +9,25 @@ static const char receive_pack_usage[] = "git-receive-pack <git-dir>";
|
||||
|
||||
static const char *unpacker[] = { "unpack-objects", NULL };
|
||||
|
||||
static int deny_non_fast_forwards = 0;
|
||||
static int report_status;
|
||||
|
||||
static char capabilities[] = "report-status";
|
||||
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)
|
||||
{
|
||||
deny_non_fast_forwards = git_config_bool(var, value);
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int show_ref(const char *path, const unsigned char *sha1)
|
||||
{
|
||||
if (capabilities_sent)
|
||||
@ -338,6 +352,8 @@ int main(int argc, char **argv)
|
||||
if(!enter_repo(dir, 0))
|
||||
die("'%s': unable to chdir or not a git archive", dir);
|
||||
|
||||
git_config(receive_pack_config);
|
||||
|
||||
write_head_info();
|
||||
|
||||
/* EOF */
|
||||
|
Reference in New Issue
Block a user