Fix spaces->tabs.
[git-central.git] / server / post-receive-trac
index a67e1e5..8a5ec96 100644 (file)
@@ -1,16 +1,30 @@
 #!/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 --stdin $newrev
-       else
-               git rev-parse --not --branches | grep -v $(git rev-parse $refname) | git rev-list --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"
+               author="$(git rev-list -n 1 $commit --pretty=format:'%cn <%ce>' | grep -v $commit)"
+               message="$(git rev-list -n 1 $commit --pretty=format:'%s%n%b' | grep -v $commit)"
+               "$PYTHON" "$POST_RECEIVE_TRAC" "$TRAC_ENV" "$short_refname" "$describe" "$describe_tags" "$commit" "$author" "$message"
        done
 done