Merge branch 'master' of .
[git.git] / git-sh-setup-script
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-cache -q --refresh` && {
16     dirty2_=`git-diff-cache --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" ]