summaryrefslogtreecommitdiff
path: root/templates
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2005-08-02 23:45:21 (GMT)
committerJunio C Hamano <junkio@cox.net>2005-08-03 23:27:38 (GMT)
commit8d5afef0f9b3a252f7b90406d35c295dc698e26d (patch)
tree0656bdb1282ecb419ab8fe2a2ce9b702b16e19ed /templates
parentee639140c9d3d7d0c8821e6b7d36c75ae578b326 (diff)
downloadgit-8d5afef0f9b3a252f7b90406d35c295dc698e26d.zip
git-8d5afef0f9b3a252f7b90406d35c295dc698e26d.tar.gz
git-8d5afef0f9b3a252f7b90406d35c295dc698e26d.tar.bz2
Install sample hooks
A template mechanism to populate newly initialized repository with default set of files is introduced. Use it to ship example hooks that can be used for update and post update checks, as Josef Weidendorfer suggests. Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'templates')
-rw-r--r--templates/Makefile19
-rw-r--r--templates/hooks--post-update8
-rw-r--r--templates/hooks--update21
3 files changed, 48 insertions, 0 deletions
diff --git a/templates/Makefile b/templates/Makefile
new file mode 100644
index 0000000..1243351
--- /dev/null
+++ b/templates/Makefile
@@ -0,0 +1,19 @@
+# make
+
+INSTALL=install
+prefix=$(HOME)
+etcdir=$(prefix)/etc
+etcgitdir=$(etcdir)/git-core
+templatedir=$(etcgitdir)/templates
+# dest=
+
+all:
+clean:
+
+install:
+ $(INSTALL) -d -m755 $(dest)$(templatedir)/hooks/
+ $(foreach s,$(wildcard hooks--*),\
+ $(INSTALL) -m644 $s \
+ $(dest)$(templatedir)/hooks/$(patsubst hooks--%,%,$s);)
+ $(INSTALL) -d -m755 $(dest)$(templatedir)/info
+ $(INSTALL) -d -m755 $(dest)$(templatedir)/branches
diff --git a/templates/hooks--post-update b/templates/hooks--post-update
new file mode 100644
index 0000000..bcba893
--- /dev/null
+++ b/templates/hooks--post-update
@@ -0,0 +1,8 @@
+#!/bin/sh
+#
+# An example hook script to prepare a packed repository for use over
+# dumb transports.
+#
+# To enable this hook, make this file executable by "chmod +x post-update".
+
+exec git-update-server-info
diff --git a/templates/hooks--update b/templates/hooks--update
new file mode 100644
index 0000000..540ade0
--- /dev/null
+++ b/templates/hooks--update
@@ -0,0 +1,21 @@
+#!/bin/sh
+#
+# An example hook script to mail out commit update information.
+#
+# To enable this hook:
+# (1) change the recipient e-mail address
+# (2) make this file executable by "chmod +x update".
+#
+
+recipient="commit-list@mydomain.xz"
+
+if expr "$2" : '0*$' >/dev/null
+then
+ echo "Created a new ref, with the following commits:"
+ git-rev-list --pretty "$2"
+else
+ echo "New commits:"
+ git-rev-list --pretty "$3" "^$2"
+fi |
+mail -s "Changes to ref $1" "$recipient"
+exit 0