correct tick diff calculation for first iteration
[bachelor-thesis/roomba_tests.git] / svnrevision.sh
index 67b03a2..f4e014d 100755 (executable)
@@ -1,11 +1,26 @@
 #!/bin/bash
 
-revision=$(svn info|grep Revision|sed 's/Revision: //')
+# try SVN
+revision=$(svn info 2>&1|grep Revision|sed 's/Revision: //')
+stat=$(svn status 2>&1|grep '^M')
 
-if [ -n "$(svn status|grep '^M')" ]; then
-  status=" with local changes"
+# if that fails, try git-svn
+if [ -z "$revision" ]; then
+  revision=$(git svn info 2>&1|grep Revision|sed 's/Revision: //')
+  stat=$(git status 2>&1|grep 'modified: ')
+  # ...and also check if there are un-dcommited changesets
+  stat=$stat$(git diff --stat HEAD git-svn); 
+fi;
+
+# if that fails, give up
+if [ -z "$revision" ]; then
+  $revision="No SVN or git-svn working copy!"
 else
-  status=""
+  if [ -n "$stat" ]; then
+    status=" with local changes"
+  else
+    status=""
+  fi;
 fi;
 
 echo '// This file is created automatically, your changes will be lost.' > svnrevision.h
This page took 0.022969 seconds and 4 git commands to generate.