git-check-ref-format: reject funny ref names.
[git/debian.git] / git-sh-setup.sh
bloba0172686a90c58a454656f9e6d49d6c694aec2fc
1 #!/bin/sh
3 # Set up GIT_DIR and GIT_OBJECT_DIRECTORY
4 # and return true if everything looks ok
6 : ${GIT_DIR=.git}
7 : ${GIT_OBJECT_DIRECTORY="$GIT_DIR/objects"}
9 # Having this variable in your environment would break scripts because
10 # you would cause "cd" to be be taken to unexpected places. If you
11 # like CDPATH, define it for your interactive shell sessions without
12 # exporting it.
13 unset CDPATH
15 die() {
16 echo >&2 "$@"
17 exit 1
20 case "$(GIT_DIR="$GIT_DIR" git-symbolic-ref HEAD 2>/dev/null)" in
21 refs/*) : ;;
22 *) false ;;
23 esac &&
24 [ -d "$GIT_DIR/refs" ] &&
25 [ -d "$GIT_OBJECT_DIRECTORY/00" ]