From 3f4f4cc0da03b312fabcd5a509baa8092de39534 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Fri, 11 Jan 2013 14:43:42 -0800 Subject: clone: do not export and unexport GIT_CONFIG Earlier, dc87183 (use GIT_CONFIG only in "git config", not other programs, 2008-06-30) made sure that the environment variable is never used outside "git config", but "git clone", after creating a directory for the new repository and until the init_db() function populates its .git/ directory, exported the variable for no good reason. No hook will run from init_db() and more importantly no hook can run until init_db() finishes creation of the new repository, so it cannot be used by any invocation of "git config" by definition. Stop doing the useless export/unexport. Signed-off-by: Junio C Hamano diff --git a/builtin/clone.c b/builtin/clone.c index a4d8d25..6f0c1c6 100644 --- a/builtin/clone.c +++ b/builtin/clone.c @@ -714,8 +714,6 @@ int cmd_clone(int argc, const char **argv, const char *prefix) atexit(remove_junk); sigchain_push_common(remove_junk_on_signal); - setenv(CONFIG_ENVIRONMENT, mkpath("%s/config", git_dir), 1); - if (safe_create_leading_directories_const(git_dir) < 0) die(_("could not create leading directories of '%s'"), git_dir); @@ -732,13 +730,6 @@ int cmd_clone(int argc, const char **argv, const char *prefix) init_db(option_template, INIT_DB_QUIET); write_config(&option_config); - /* - * At this point, the config exists, so we do not need the - * environment variable. We actually need to unset it, too, to - * re-enable parsing of the global configs. - */ - unsetenv(CONFIG_ENVIRONMENT); - git_config(git_default_config, NULL); if (option_bare) { -- cgit v0.10.2-6-g49f6