Skip to content

Commit

Permalink
shell setup: clear_local_git_env() function
Browse files Browse the repository at this point in the history
Introduce an auxiliary function to clear all repo-local environment
variables. This should be invoked by any shell script that switches
repository during execution, to ensure that the environment is clean
and that things such as the git dir and worktree are set up correctly.

Signed-off-by: Giuseppe Bilotta <[email protected]>
Signed-off-by: Junio C Hamano <[email protected]>
  • Loading branch information
Oblomov authored and gitster committed Feb 25, 2010
1 parent 94c8cca commit 7d750f0
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions git-sh-setup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,13 @@ get_author_ident_from_commit () {
LANG=C LC_ALL=C sed -ne "$pick_author_script"
}
# Clear repo-local GIT_* environment variables. Useful when switching to
# another repository (e.g. when entering a submodule). See also the env
# list in git_connect()
clear_local_git_env() {
unset $(git rev-parse --local-env-vars)
}
# Make sure we are in a valid repository of a vintage we understand,
# if we require to be in a git repository.
if test -z "$NONGIT_OK"
Expand Down

0 comments on commit 7d750f0

Please sign in to comment.