| 1234567891011121314151617 |
- #!/bin/bash
- if git rev-parse --git-dir 2>&1 >/dev/null; then
- gitversion=$(git describe --tags --long --match "$1*" --abbrev=7 || echo "0.0.0-dirty-0-g$(git describe --tags --match "$1*" --always --abbrev=7 2>/dev/null)")
- patch=$(sed -r -e 's/[0-9]+\.[0-9]+\.([0-9]+).*/\1/' <<< ${gitversion#$1})
- let patch+=1
- version=$(sed -r -e 's/-0-(g[0-9a-f]{7})//' <<< ${gitversion#$1})
- version=$(sed -r -e "s/\.[0-9]+-([0-9]+)-(g[0-9a-f]{7})/.${patch}-dev\1+\2/" <<< ${version})
- version=$(sed -r -e "s/-([0-9]+)-(g[0-9a-f]{7})/+p\1+\2/" <<< ${version})
- echo "Git version: '$version'" >&2
- echo $version
- else
- echo "No Git repository: '0.0.0-nogit'" >&2
- echo "0.0.0-nogit"
- fi
- exit 0
|