aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/git/.local/bin/git-bump
blob: d75a755199fe372c6e18869681412f24007c3c24 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/bin/sh

tag="$(git describe --abbrev=0 2>/dev/null)"
IFS=. read -r major minor patch <<EOF
${tag#v}
EOF

case "$1" in
major)
	major=$((major + 1))
	minor=0
	patch=0
	;;
minor)
	minor=$((minor + 1))
	patch=0
	;;
patch)
	patch=$((patch + 1))
	;;
*)
	echo "Invalid semver argument given (major|minor|patch): $1" 1>&2
	exit 1
	;;
esac

git shortlog "$tag"..HEAD | git tag -s "v${major}.${minor}.${patch}" --file -