diff options
context:
space:
mode:
authorBryce Kwon <bryce@brycekwon.com>
committerBryce Kwon <bryce@brycekwon.com>
commit
parent
tree
download
Reorganize the tree into vendor/ and custom/
Diffstat (limited to 'custom/hooks')
-rwxr-xr-xcustom/hooks/post-receive.agefile19
-rwxr-xr-xcustom/hooks/post-update.update-server-info18
2 files changed, 37 insertions, 0 deletions
diff --git a/custom/hooks/post-receive.agefile b/custom/hooks/post-receive.agefile
new file mode 100755
index 0000000..2f72ae9
--- /dev/null
+++ b/custom/hooks/post-receive.agefile
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# An example hook to update the "agefile" for CGit's idle time calculation.
+#
+# This hook assumes that you are using the default agefile location of
+# "info/web/last-modified". If you change the value in your cgitrc then you
+# must also change it here.
+#
+# To install the hook, copy (or link) it to the file "hooks/post-receive" in
+# each of your repositories.
+#
+
+agefile="$(git rev-parse --git-dir)"/info/web/last-modified
+
+mkdir -p "$(dirname "$agefile")" &&
+git for-each-ref \
+ --sort=-authordate --count=1 \
+ --format='%(authordate:iso8601)' \
+ >"$agefile"
diff --git a/custom/hooks/post-update.update-server-info b/custom/hooks/post-update.update-server-info
new file mode 100755
index 0000000..d499ce5
--- /dev/null
+++ b/custom/hooks/post-update.update-server-info
@@ -0,0 +1,18 @@
+#!/bin/sh
+#
+# Example hook that keeps cgit's dumb HTTP clone data current.
+#
+# cgit can serve "git clone" over HTTP by itself using the dumb protocol,
+# which is on by default through enable-http-clone. The dumb protocol
+# reads a few static files that git refreshes only when you run
+# "git update-server-info", so without this hook a fresh push can leave a
+# clone unable to see the new refs and objects.
+#
+# You do not need this when you clone through git-http-backend (the smart
+# protocol) or over ssh or git://. It matters only when cgit itself is the
+# clone endpoint.
+#
+# To install it, copy or link this file to "hooks/post-update" in each
+# repository and make sure it is executable.
+#
+exec git update-server-info