From d4e0a0bffe3c28fd9903e296f2f5eb67d5fe8ae8 Mon Sep 17 00:00:00 2001 From: Tzafrir Cohen Date: Tue, 3 Aug 2010 11:39:10 +0300 Subject: version_hook: sruffel's post-commit script A copy of Shaun Ruffel's post-commit script from http://github.com/sruffell/dahdi-linux/tree/externals --- version_hook | 65 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100755 version_hook diff --git a/version_hook b/version_hook new file mode 100755 index 0000000..139c16b --- /dev/null +++ b/version_hook @@ -0,0 +1,65 @@ +#!/bin/bash +PROJECT="dahdi/linux" + +# Do not update the .version file if it's part of the repository +git ls-files | grep ^\.version +if [ $? -eq 0 ]; then + exit 0 +fi + +if [ -d .git ]; then + # If the first log commit messages indicates that this is checked into + # subversion, we'll just use the SVN- form of the revision. + SVN_REV=`git log --pretty=full -1 | grep git-svn-id | sed -e "s/.*\@\([^\s]*\)\s.*/\1/g"` + if [ -z "$SVN_REV" ]; then + RESULT=`git log --pretty=format:"%h" -1` + echo GIT-${RESULT} > .version + else + PARTS=`LANG=C git log --pretty=full | grep git-svn | head -1 | awk '{print $2;}' | sed -e s:^.*/svn/${PROJECT}/:: | sed -e 's:/: :g' | sed -e 's/@.*$//g'` + BRANCH=0 + TEAM=0 + + if [ "${PARTS}" = "trunk" ] + then + echo SVN-'trunk'-r${SVN_REV} > .version + exit 0 + fi + + for PART in $PARTS + do + if [ ${BRANCH} != 0 ] + then + RESULT="${RESULT}-${PART}" + break + fi + + if [ ${TEAM} != 0 ] + then + RESULT="${RESULT}-${PART}" + continue + fi + + if [ "${PART}" = "branches" ] + then + BRANCH=1 + RESULT="branch" + continue + fi + + if [ "${PART}" = "tags" ] + then + BRANCH=1 + RESULT="tag" + continue + fi + + if [ "${PART}" = "team" ] + then + TEAM=1 + continue + fi + done + + echo SVN-${RESULT##-}-r${SVN_REV} > .version + fi +fi -- cgit v1.2.3