7 if ! MYTMP=$(mktemp -d -t $scriptname-XXXXXX)
11 echo >&2 "Cannot create temporary directory."
22 # clean up if we get stopped by Crtl-C or forced logout or normal exit
28 if [ "$1" = "--debug" ]
36 echo "check-files [--debug] -|filenames"
38 echo " git diff | ./packaging/check-files -"
39 echo "for a complete check (v.s. empty repo):"
40 echo " git diff 4b825dc642cb6eb9a060e54bf8d69288fbee4904 | ./packaging/check-files -"
41 echo "or in .git/hooks/pre-commit:"
42 echo " exec git diff --cached | ./packaging/check-files -"
46 if [ ! -x packaging/check-files ]
48 echo "Must be run from base directory"
62 echo "$f: no such file"
67 git status --porcelain "$@" | grep "^?" | cut -c4- > $MYTMP/missing.lst
71 git update-index --add --cacheinfo \
72 100644 e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 $missing
73 done < $MYTMP/missing.lst
75 empty_tree=4b825dc642cb6eb9a060e54bf8d69288fbee4904
76 git diff $empty_tree -- "$@" > $MYTMP/diff.full
81 git update-index --force-remove $missing
82 done < $MYTMP/missing.lst
85 > $MYTMP/diff.lst sed -e "/^+++ b/{p;s:^+++ b/::;w $MYTMP/files.lst" -e "d;}" $f
91 if [ "$dirname" = "$0" ]; then dirname="."; fi
93 for i in $dirname/*.functions $dirname/*/*.functions
98 echo $i | sed -e 's:.*/::' -e 's/\.functions$//' -e 's/\./_/g' >> $MYTMP/fns
105 "${fn}_check_init" $filename || status=1
110 #echo Checking $filename
115 "${fn}_check_file" $filename || status=1
118 done < $MYTMP/files.lst
124 "${fn}_check_fin" $filename || status=1