From bb3235a2b6f5521040e96da30a6cf122940cd539 Mon Sep 17 00:00:00 2001 From: Paul Phillips Date: Fri, 26 Nov 2010 23:53:37 +0000 Subject: Moved the painful-in-ant git/svn revision getti... Moved the painful-in-ant git/svn revision getting logic into bash where it's at least somewhat less painful. Made it more flexible for easy use in more places since we presently have all kinds of revision figuring logic variations in other build files (sbaz, installer, scala-documentation, scala-tool-support, etc.) No review. --- build.xml | 25 ++++--------------------- tools/get-git-svn-rev | 28 ++++++++++++++++++++++++++-- tools/get-scala-revision | 29 +++++++++++++++++++++++++++++ 3 files changed, 59 insertions(+), 23 deletions(-) create mode 100755 tools/get-scala-revision diff --git a/build.xml b/build.xml index e7d4fad6c5..f5b3571994 100644 --- a/build.xml +++ b/build.xml @@ -221,27 +221,10 @@ INITIALISATION - - - - - - - - - - - - - - - - - + + + + diff --git a/tools/get-git-svn-rev b/tools/get-git-svn-rev index 283b4141fe..0fa020de95 100755 --- a/tools/get-git-svn-rev +++ b/tools/get-git-svn-rev @@ -1,5 +1,29 @@ #!/bin/sh # +# Usage: get-scala-rev [dir] +# Figures out current scala revision of an svn checkout or +# a git-svn mirror (or a git clone.) +# +# If no dir is given, current working dir is used. + +DIR="" +if [[ $# -eq 0 ]]; then + DIR=`pwd` +else + DIR=$1 +fi + +builtin cd $DIR -GIT_PAGER=cat -git log -10 | grep git-svn-id | head -1 | sed 's/[^@]*@\([0-9]*\).*/\1/' \ No newline at end of file +if [[ -d .svn ]]; then + svn info . | grep ^Revision | sed 's/Revision: //' +elif [[ -d .git ]]; then + GIT_PAGER=cat + # this grabs more than one line because otherwise if you have local + # commits which aren't in git-svn it won't see any revision. + git log -10 | grep git-svn-id | head -1 | sed 's/[^@]*@\([0-9]*\).*/\1/' +else + echo "${DIR} doesn't appear to be git or svn dir." >&2 + echo 0 + exit 1 +fi diff --git a/tools/get-scala-revision b/tools/get-scala-revision new file mode 100755 index 0000000000..0fa020de95 --- /dev/null +++ b/tools/get-scala-revision @@ -0,0 +1,29 @@ +#!/bin/sh +# +# Usage: get-scala-rev [dir] +# Figures out current scala revision of an svn checkout or +# a git-svn mirror (or a git clone.) +# +# If no dir is given, current working dir is used. + +DIR="" +if [[ $# -eq 0 ]]; then + DIR=`pwd` +else + DIR=$1 +fi + +builtin cd $DIR + +if [[ -d .svn ]]; then + svn info . | grep ^Revision | sed 's/Revision: //' +elif [[ -d .git ]]; then + GIT_PAGER=cat + # this grabs more than one line because otherwise if you have local + # commits which aren't in git-svn it won't see any revision. + git log -10 | grep git-svn-id | head -1 | sed 's/[^@]*@\([0-9]*\).*/\1/' +else + echo "${DIR} doesn't appear to be git or svn dir." >&2 + echo 0 + exit 1 +fi -- cgit v1.2.3