summaryrefslogtreecommitdiff
path: root/server/common/src/testdata/bare/hooks/commit-msg.sample
diff options
context:
space:
mode:
authorJoel Klinghed <the_jk@spawned.biz>2025-02-04 23:57:03 +0100
committerJoel Klinghed <the_jk@spawned.biz>2025-02-04 23:57:03 +0100
commit3bee55ab1dd486c7218e2810d0b3b36edb272dc5 (patch)
tree97e54f7b8faef9b26bd0dcbfd57491b951858158 /server/common/src/testdata/bare/hooks/commit-msg.sample
parente68e405ed902a10f771fcd8bc4837cb4e2a8e878 (diff)
common: Add tests for git
Wanted to include a non-bare repo as well but git doesn't like one adding a non-bare git repo NOT as a submodule. And bare repos are the main code path anyway.
Diffstat (limited to 'server/common/src/testdata/bare/hooks/commit-msg.sample')
-rwxr-xr-xserver/common/src/testdata/bare/hooks/commit-msg.sample24
1 files changed, 24 insertions, 0 deletions
diff --git a/server/common/src/testdata/bare/hooks/commit-msg.sample b/server/common/src/testdata/bare/hooks/commit-msg.sample
new file mode 100755
index 0000000..b58d118
--- /dev/null
+++ b/server/common/src/testdata/bare/hooks/commit-msg.sample
@@ -0,0 +1,24 @@
+#!/bin/sh
+#
+# An example hook script to check the commit log message.
+# Called by "git commit" with one argument, the name of the file
+# that has the commit message. The hook should exit with non-zero
+# status after issuing an appropriate message if it wants to stop the
+# commit. The hook is allowed to edit the commit message file.
+#
+# To enable this hook, rename this file to "commit-msg".
+
+# Uncomment the below to add a Signed-off-by line to the message.
+# Doing this in a hook is a bad idea in general, but the prepare-commit-msg
+# hook is more suited to it.
+#
+# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p')
+# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1"
+
+# This example catches duplicate Signed-off-by lines.
+
+test "" = "$(grep '^Signed-off-by: ' "$1" |
+ sort | uniq -c | sed -e '/^[ ]*1[ ]/d')" || {
+ echo >&2 Duplicate Signed-off-by lines.
+ exit 1
+}