|
|
@@ -1,23 +1,24 @@
|
|
|
#!/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
|
|
|
- exit 1
|
|
|
+ exit 1
|
|
|
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
|
|
|
- exit 1
|
|
|
+ exit 1
|
|
|
fi
|