Browse Source

git-sh-setup: do not use repo-config to test the git directory

Since repo-config does not fail in non-git directory, it is not
a good command to use to test the git-ness nor validate the
repository revision of $GIT_DIR.

Original patch by Robert Shearman but with minor fixes.

Signed-off-by: Junio C Hamano <junkio@cox.net>
maint
Junio C Hamano 18 years ago
parent
commit
c8769f76d9
  1. 11
      git-sh-setup.sh

11
git-sh-setup.sh

@ -35,17 +35,12 @@ case "$1" in @@ -35,17 +35,12 @@ case "$1" in
exit
esac

# Make sure we are in a valid repository of a vintage we understand.
if [ -z "$SUBDIRECTORY_OK" ]
then
: ${GIT_DIR=.git}
: ${GIT_OBJECT_DIRECTORY="$GIT_DIR/objects"}

# Make sure we are in a valid repository of a vintage we understand.
GIT_DIR="$GIT_DIR" git repo-config --get core.nosuch >/dev/null
if test $? = 128
then
exit
fi
GIT_DIR=$(GIT_DIR="$GIT_DIR" git-rev-parse --git-dir) || exit
else
GIT_DIR=$(git-rev-parse --git-dir) || exit
fi
: ${GIT_OBJECT_DIRECTORY="$GIT_DIR/objects"}

Loading…
Cancel
Save