setup: allow for prefix to be passed to git commands

In a future patch child processes which act on submodules need a little
more context about the original command that was invoked.  This patch
teaches git to use the prefix stored in `GIT_INTERNAL_TOPLEVEL_PREFIX`
instead of the prefix that was potentally found during the git directory
setup process.

Signed-off-by: Brandon Williams <bmwill@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Brandon Williams
2017-03-17 10:22:54 -07:00
committed by Junio C Hamano
parent 4fb1c6aad8
commit b58a68c1c1
3 changed files with 7 additions and 3 deletions

View File

@ -939,9 +939,14 @@ static const char *setup_git_directory_gently_1(int *nongit_ok)
const char *setup_git_directory_gently(int *nongit_ok)
{
const char *prefix;
const char *prefix, *env_prefix;
prefix = setup_git_directory_gently_1(nongit_ok);
env_prefix = getenv(GIT_TOPLEVEL_PREFIX_ENVIRONMENT);
if (env_prefix)
prefix = env_prefix;
if (prefix)
setenv(GIT_PREFIX_ENVIRONMENT, prefix, 1);
else