summaryrefslogtreecommitdiff
path: root/server/common/src/testdata/bare/hooks/pre-receive.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/pre-receive.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/pre-receive.sample')
-rwxr-xr-xserver/common/src/testdata/bare/hooks/pre-receive.sample24
1 files changed, 24 insertions, 0 deletions
diff --git a/server/common/src/testdata/bare/hooks/pre-receive.sample b/server/common/src/testdata/bare/hooks/pre-receive.sample
new file mode 100755
index 0000000..a1fd29e
--- /dev/null
+++ b/server/common/src/testdata/bare/hooks/pre-receive.sample
@@ -0,0 +1,24 @@
+#!/bin/sh
+#
+# An example hook script to make use of push options.
+# The example simply echoes all push options that start with 'echoback='
+# and rejects all pushes when the "reject" push option is used.
+#
+# To enable this hook, rename this file to "pre-receive".
+
+if test -n "$GIT_PUSH_OPTION_COUNT"
+then
+ i=0
+ while test "$i" -lt "$GIT_PUSH_OPTION_COUNT"
+ do
+ eval "value=\$GIT_PUSH_OPTION_$i"
+ case "$value" in
+ echoback=*)
+ echo "echo from the pre-receive-hook: ${value#*=}" >&2
+ ;;
+ reject)
+ exit 1
+ esac
+ i=$((i + 1))
+ done
+fi