I think it is good practise to create a read only tag when releasing an application. This allows you to create a branch from it at any time or a bug fix with out worrying about accidentally mixing in new features from your latest code base.
Lists current tags:
$ git tag
Create tag named gem-0.1.0, code to match the gem 0.1.0 release.
$ git tag gem-0.1.0
Push named tag to the remote repo:
$ git push origin gem-0.1.0
Push all tags to repo:
$ git push --tags
A very good book covering topics like this and many others Pragmatic Guide to Git .