enforce config from hook

This commit is contained in:
Lectem 2015-06-13 22:20:56 +02:00
parent 85183a702a
commit 499171ca64
2 changed files with 18 additions and 19 deletions

View File

@ -1,2 +0,0 @@
[core]
whitespace = blank-at-eol,trailing-space,tab-in-indent

View File

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