]> git.ipfire.org Git - thirdparty/git.git/blob - git-sh-setup.sh
GIT 0.99.6
[thirdparty/git.git] / git-sh-setup.sh
1 #!/bin/sh
2 #
3 # Set up GIT_DIR and GIT_OBJECT_DIRECTORY
4 # and return true if everything looks ok
5 #
6 : ${GIT_DIR=.git}
7 : ${GIT_OBJECT_DIRECTORY="$GIT_DIR/objects"}
8
9 die() {
10 echo "$@" >&2
11 exit 1
12 }
13
14 check_clean_tree() {
15 dirty1_=`git-update-index -q --refresh` && {
16 dirty2_=`git-diff-index --name-only --cached HEAD`
17 case "$dirty2_" in '') : ;; *) (exit 1) ;; esac
18 } || {
19 echo >&2 "$dirty1_"
20 echo "$dirty2_" | sed >&2 -e 's/^/modified: /'
21 (exit 1)
22 }
23 }
24
25 [ -h "$GIT_DIR/HEAD" ] &&
26 [ -d "$GIT_DIR/refs" ] &&
27 [ -d "$GIT_OBJECT_DIRECTORY/00" ]