summaryrefslogtreecommitdiff
path: root/bin/git-pre-commit-hook
diff options
context:
space:
mode:
Diffstat (limited to 'bin/git-pre-commit-hook')
-rwxr-xr-xbin/git-pre-commit-hook22
1 files changed, 22 insertions, 0 deletions
diff --git a/bin/git-pre-commit-hook b/bin/git-pre-commit-hook
new file mode 100755
index 00000000..2a65775a
--- /dev/null
+++ b/bin/git-pre-commit-hook
@@ -0,0 +1,22 @@
+#!/bin/bash
+
+# copy (DO NOT SYMLINK) this file to .git/hooks/pre-commit
+# to check style on all modified files before allowing the commit to complete
+#
+# DO NOT SYMLINK
+# DO NOT SYMLINK
+# DO NOT SYMLINK (why? security risk)
+
+cd $(dirname "$0")/../..
+
+IFS=$'\n'
+files=( $(git diff-index --cached --name-only --diff-filter=AMCR HEAD) )
+
+if [ "${#files}" -gt 0 ]; then
+ errors=$(bin/style-check "${files[@]}" 2>&1)
+
+ if [ "$?" != "0" ]; then
+ echo "$errors"
+ exit 1
+ fi
+fi