local push/pull env cleanup
remove environment variables relating to the current repository before execing the 'remote' half of a local push or pull operation [jc: the original from Matt spelled out the environment variable names, which I changed to the preprocessor symbols defined in cache.h. Also it missed GRAFT_ENVIRONMENT.] Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
parent
941c944999
commit
016fb48bc4
10
connect.c
10
connect.c
@ -644,10 +644,16 @@ int git_connect(int fd[2], char *url, const char *prog)
|
||||
ssh_basename++;
|
||||
execlp(ssh, ssh_basename, host, command, NULL);
|
||||
}
|
||||
else
|
||||
else {
|
||||
unsetenv(ALTERNATE_DB_ENVIRONMENT);
|
||||
unsetenv(DB_ENVIRONMENT);
|
||||
unsetenv(GIT_DIR_ENVIRONMENT);
|
||||
unsetenv(GRAFT_ENVIRONMENT);
|
||||
unsetenv(INDEX_ENVIRONMENT);
|
||||
execlp("sh", "sh", "-c", command, NULL);
|
||||
}
|
||||
die("exec failed");
|
||||
}
|
||||
}
|
||||
fd[0] = pipefd[0][0];
|
||||
fd[1] = pipefd[1][1];
|
||||
close(pipefd[0][1]);
|
||||
|
Loading…
Reference in New Issue
Block a user