Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/sh
- # mostly default pre-commit hook
- if git-rev-parse --verify HEAD >/dev/null 2>&1
- then
- against=HEAD
- else
- # Initial commit: diff against an empty tree object
- against=4b825dc642cb6eb9a060e54bf8d69288fbee4904
- fi
- # If you want to allow non-ascii filenames set this variable to true.
- allownonascii=$(git config hooks.allownonascii)
- # Cross platform projects tend to avoid non-ascii filenames; prevent
- # them from being added to the repository. We exploit the fact that the
- # printable range starts at the space character and ends with tilde.
- if [ "$allownonascii" != "true" ] &&
- # Note that the use of brackets around a tr range is ok here, (it's
- # even required, for portability to Solaris 10's /usr/bin/tr), since
- # the square bracket bytes happen to fall in the designated range.
- test "$(git diff --cached --name-only --diff-filter=A -z $against |
- LC_ALL=C tr -d '[ -~]\0')"
- then
- echo "Error: Attempt to add a non-ascii file name."
- echo
- echo "This can cause problems if you want to work"
- echo "with people on other platforms."
- echo
- echo "To be portable it is advisable to rename the file ..."
- echo
- echo "If you know what you are doing you can disable this"
- echo "check using:"
- echo
- echo " git config hooks.allownonascii true"
- echo
- exit 1
- fi
- # console.log is useful when testing, but it should not be commited
- if [ "$allowjsconsole" != "true" ]; then
- jsfiles=$(git diff --cached --name-only --relative $against | sed -n '/\.js$/p');
- if [ -n "$jsfiles" ] &&
- [ -n "$( git diff --cached -Sconsole. $jsfiles | sed -n 's/console\.\(\w\+\)(.*\?)/&/p')" ];
- then
- echo "Error: Attempt to commit javascript with js console usage."
- echo
- echo "This might upset the master people..."
- echo
- echo "if you don't care about their wishes, you can disable"
- echo "this check by using:"
- echo
- echo " git config hooks.allowjsconsole true"
- echo
- exit 1
- fi
- fi
- exec git diff-index --check --cached $against --
Add Comment
Please, Sign In to add comment