I am facing a problem with git tags when using the maven release-plugin. We have turned off the automatic push to git during `mvn release:perform`, and the following is done to build a new release:

1. Pull the latest changes from remote git repo.
2. `mvn release:prepare`
3. `mvn release:perform`
4. `git push origin master`
5. `git push --tags`

This scenario works, commits are tagged and all is good. But, with this scenario, the tags are lost:

1. Pull the latest changes from remote git repo.
2. `mvn release:prepare`
3. Someone pushes a commit on master!
4. `mvn release:perform`
5. `git push origin master` -- doesn't work, since new commit is in, so
6. `git pull --rebase origin master`
7. `git push origin master`
8. `git push --tags`

Git states that new tags have been pushed, but they are not available for anyone else than me (who made the build), nor are they visible when using `gitk`, so in all practical uses, the tags are lost.

Is this a bug in git, or is it a usage error (is it our reponsibility to make sure that no commits come in when building)?