| Daniel Dunbar | 87b8faf | 2010-01-21 16:09:59 +0000 | [diff] [blame] | 1 | #!/bin/sh | 
|  | 2 |  | 
| Daniel Dunbar | b33a43b | 2010-01-22 18:14:21 +0000 | [diff] [blame] | 3 | usage() { | 
| Daniel Dunbar | afd363e | 2010-09-29 17:57:01 +0000 | [diff] [blame] | 4 | echo "usage: $0 <source root>" | 
|  | 5 | echo "  Prints the source control revision of the given source directory," | 
|  | 6 | echo "  the exact format of the revision string depends on the source " | 
|  | 7 | echo "  control system. If the source control system isn't known, the output" | 
|  | 8 | echo "  is empty and the exit code is 1." | 
|  | 9 | exit 1 | 
| Daniel Dunbar | 87b8faf | 2010-01-21 16:09:59 +0000 | [diff] [blame] | 10 | } | 
|  | 11 |  | 
|  | 12 | if [ $# != 1 ] || [ ! -d $1 ]; then | 
|  | 13 | usage; | 
|  | 14 | fi | 
|  | 15 |  | 
|  | 16 | cd $1 | 
|  | 17 | if [ -d .svn ]; then | 
| Daniel Dunbar | 8211d31 | 2010-09-29 19:30:17 +0000 | [diff] [blame] | 18 | svnversion | sed -e "s#\([0-9]*\)[A-Z]*#\1#" | 
| Daniel Dunbar | bf0bf74 | 2012-05-15 18:44:09 +0000 | [diff] [blame] | 19 | elif [ -f .git/svn/.metadata ]; then | 
| Daniel Dunbar | afd363e | 2010-09-29 17:57:01 +0000 | [diff] [blame] | 20 | git svn info | grep 'Revision:' | cut -d: -f2- | 
| Daniel Dunbar | 87b8faf | 2010-01-21 16:09:59 +0000 | [diff] [blame] | 21 | elif [ -d .git ]; then | 
| Daniel Dunbar | afd363e | 2010-09-29 17:57:01 +0000 | [diff] [blame] | 22 | git log -1 --pretty=format:%H | 
| Daniel Dunbar | 87b8faf | 2010-01-21 16:09:59 +0000 | [diff] [blame] | 23 | else | 
| Daniel Dunbar | afd363e | 2010-09-29 17:57:01 +0000 | [diff] [blame] | 24 | exit 1; | 
| Daniel Dunbar | 87b8faf | 2010-01-21 16:09:59 +0000 | [diff] [blame] | 25 | fi | 
|  | 26 |  | 
|  | 27 | exit 0 |