setlocalversion 527 Bytes
Newer Older
1 2
#!/bin/sh
# Print additional version information for non-release trees.
3

4 5 6
usage() {
	echo "Usage: $0 [srctree]" >&2
	exit 1
7 8
}

9
cd "${1:-.}" || usage
10

11 12 13
# Check for git and a git repo.
if head=`git rev-parse --verify HEAD 2>/dev/null`; then
	# Do we have an untagged version?
14
	if git name-rev --tags HEAD | grep -E '^HEAD[[:space:]]+(.*~[0-9]*|undefined)$' > /dev/null; then
15 16
		printf '%s%s' -g `echo "$head" | cut -c1-8`
	fi
17

18
	# Are there uncommitted changes?
19
	if git diff-index HEAD | read dummy; then
20
		printf '%s' -dirty
21 22
	fi
fi