master is stable
git branch v0.9.8-dev
git checkout v0.9.8-dev
git push origin v0.9.8-dev
that's how we created a new dev branch
# when in master
git pull master
git checkout v0.9.8-dev
git merge master
git push
we pulled master, and merged it onto the dev branch
git checkout master
git tag v0.9.7.3
git push origin v0.9.7.3
git checkout master
git merge v0.9.8-dev
git tag v0.9.8
git push
git push origin :v0.9.8-dev
(as learnt on http://philsturgeon.co.uk/news/2009/11/Managing-stable-and-unstable-branches-in-Git)