Pass the output of git describe --tags to trac as well.
[git-central.git] / server / post-receive-trac
index 11f5ac7..4748adc 100644 (file)
@@ -1,16 +1,28 @@
 #!/bin/sh
 
-export LD_LIBRARY_PATH=/home/BIPFS/shaberman/local/lib
-TRAC_ENV=/srv/trac/cbas
+. $(dirname $0)/functions
 
 while read oldrev newrev refname ; do
-       if expr "$oldrev" : '0*$' >/dev/null
-       then
-               git rev-parse --not --branches | grep -v $(git rev-parse $refname) | git rev-list --reverse --stdin $newrev
-       else
-               git rev-parse --not --branches | grep -v $(git rev-parse $refname) | git rev-list --reverse --stdin $oldrev..$newrev
-       fi | while read commit ; do
-               /home/BIPFS/shaberman/local/bin/python /srv/git/hooks/server/post-receive-trac.py "$TRAC_ENV" "$commit"
+       case "$refname" in
+               refs/tags/*)
+                       short_refname=${refname##refs/tags/}
+                       ;;
+               refs/heads/*)
+                       short_refname=${refname##refs/heads/}
+                       ;;
+               *)
+                       echo >&2 "*** Unknown type of update to $refname"
+                       exit 1
+                       ;;
+       esac
+
+       set_new_commits
+       set_rev_types
+
+       echo "$new_commits" | git rev-list --reverse --stdin | while read commit ; do
+               set_describe "$commit"
+               set_describe_tags "$commit"
+               "$PYTHON" "$POST_RECEIVE_TRAC" "$TRAC_ENV" "$short_refname" "$describe" "$describe_tags" "$commit"
        done
 done