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 '^\+.* '
then
cat<<END;
Error: This commit would contain a tab, which is against this repo's policy.
END
exit 1
fi
# If there are whitespace errors, print the offending file names and fail. # If there are whitespace errors, print the offending file names and fail.
if if ! git diff --cached --check; then
# Use git built-in checks for trailing whitespaces cat<<END;
! git diff --check --cached
then Error: This commit would contain trailing spaces or tabs, which is against this repo's policy.
cat<<END; Please correct those issues before commiting. (Use 'git diff --check' for more details)
Error: This commit would contain trailing spaces, 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
# 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
exit 1
fi fi