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# 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. 13unset CDPATH 14 15die() { 16echo"$@">&2 17exit1 18} 19 20check_clean_tree() { 21 dirty1_=`git-update-index -q --refresh`&& { 22 dirty2_=`git-diff-index --name-only --cached HEAD` 23case"$dirty2_"in'') : ;; *) (exit1) ;;esac 24} || { 25echo>&2"$dirty1_" 26echo"$dirty2_"|sed>&2-e's/^/modified: /' 27(exit1) 28} 29} 30 31[-h"$GIT_DIR/HEAD"] && 32[-d"$GIT_DIR/refs"] && 33[-d"$GIT_OBJECT_DIRECTORY/00"]