tj.git-extras/bin/git-release
hemanth.hm 081e14f88f Merge pull request #226 from tsldh/master
Added changelog -c flag to git-release.
2014-12-07 10:49:24 +05:30

46 lines
842 B
Bash
Executable file

#!/usr/bin/env sh
hook() {
local hook=.git/hooks/$1.sh
# compat without extname
if test ! -f $hook; then
hook=.git/hooks/$1
fi
if test -f $hook; then
echo "... $1"
if test -x $hook; then
$hook
else
. $hook
fi
fi
}
if test $# -gt 0; then
version=$1
shift #remove version from arguments list
remote=''
hook pre-release
echo "... releasing $version"
# check for flags
while test $# != 0
do
case "$1" in
-c) git-changelog -t "$version" ;;
-r) remote=$2; shift ;;
--) shift; break;;
*) usage ;;
esac
shift
done
git commit -a -m "Release $version"
git tag $version -a -m "Release $version" \
&& git push $remote \
&& git push $remote --tags \
&& hook post-release \
&& echo "... complete"
else
echo "tag required" 1>&2 && exit 1
fi