|
|
@ -1,23 +1,24 @@ |
|
|
#!/bin/sh |
|
|
#!/bin/sh |
|
|
|
|
|
|
|
|
#check the config, in case the user really wants to allow tabs... |
|
|
|
|
|
allowtabs=$(git config hooks.allowtabs) |
|
|
|
|
|
if [ "$allowtabs" != "true" ] && |
|
|
|
|
|
git diff --cached | egrep '^\+.* ' |
|
|
|
|
|
then |
|
|
|
|
|
cat<<END; |
|
|
|
|
|
Error: This commit would contain a tab, which is against this repo's policy. |
|
|
|
|
|
|
|
|
# Enforce citra's whitespace policy |
|
|
|
|
|
git config --local core.whitespace tab-in-indent,trailing-space |
|
|
|
|
|
|
|
|
|
|
|
# If there are whitespace errors, print the offending file names and fail. |
|
|
|
|
|
if ! git diff --cached --check; then |
|
|
|
|
|
cat<<END; |
|
|
|
|
|
|
|
|
|
|
|
Error: This commit would contain trailing spaces or tabs, which is against this repo's policy. |
|
|
|
|
|
Please correct those issues before commiting. (Use 'git diff --check' for more details) |
|
|
|
|
|
If you know what you are doing, you can try 'git commit --no-verify' to bypass the check |
|
|
END |
|
|
END |
|
|
exit 1 |
|
|
|
|
|
|
|
|
exit 1 |
|
|
fi |
|
|
fi |
|
|
|
|
|
|
|
|
# If there are whitespace errors, print the offending file names and fail. |
|
|
|
|
|
if |
|
|
|
|
|
# Use git built-in checks for trailing whitespaces |
|
|
|
|
|
! git diff --check --cached |
|
|
|
|
|
then |
|
|
|
|
|
cat<<END; |
|
|
|
|
|
Error: This commit would contain trailing spaces, which is against this repo's policy. |
|
|
|
|
|
|
|
|
# Check for tabs, since tab-in-indent catches only those at the beginning of a line |
|
|
|
|
|
if git diff --cached | egrep '^\+.* '; then |
|
|
|
|
|
cat<<END; |
|
|
|
|
|
Error: This commit would contain a tab, which is against this repo's policy. |
|
|
|
|
|
If you know what you are doing, you can try 'git commit --no-verify' to bypass the check. |
|
|
END |
|
|
END |
|
|
exit 1 |
|
|
|
|
|
|
|
|
exit 1 |
|
|
fi |
|
|
fi |