summaryrefslogtreecommitdiff
path: root/utils/hooks
diff options
context:
space:
mode:
authorNicolas Dufresne <nicolas.dufresne@collabora.com>2020-01-18 15:00:15 -0500
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-01-18 22:41:00 +0200
commit3628fb704b49101000ea901bfa5132a3e8a781cd (patch)
tree2385103c1c43a257c77ddc0b1bb4da943dce7793 /utils/hooks
parent17b3c794095eb6f73ef83061bd49aeef5ad11507 (diff)
checkstyle: Add a pre-commit hook script
This adds support for pre-commit hook workflow. In pre-commit hook we check the style on the changes currently staged or the combination of the index and the last commit if "git commit --amend" is being used. Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'utils/hooks')
-rwxr-xr-xutils/hooks/pre-commit18
1 files changed, 18 insertions, 0 deletions
diff --git a/utils/hooks/pre-commit b/utils/hooks/pre-commit
new file mode 100755
index 00000000..47fcbc81
--- /dev/null
+++ b/utils/hooks/pre-commit
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# Execute the checkstyle script before committing any code. This will fail the
+# commit in case of style issues, ensuring that the developer will notice them.
+# The pre-commit hook can be bypassed with git commit -n to ignore selective
+# changes.
+#
+# To utilise this hook, install this file with:
+# cp utils/hooks/pre-commit .git/hooks/pre-commit
+
+if ps -ocommand= -p $PPID | grep -- "--amend"
+then
+ args="--amend"
+else
+ args="--staged"
+fi
+
+./utils/checkstyle.py $args