I know how to delete a tag from SourceTree. Just right-click, delete, and tick "remove tag from all remotes." It then executes the following (and I'm omitting the flags -c diff.mnemonicprefix=false -c core.quotepath=false
for readability):
git tag -d my_tag
git push -v origin :refs/tags/my_tag
This works.
Here is the problem.
Some time later, one of the other developers will push their feature branch to origin, and SourceTree will automatically push all local tags to the remote server. This will recreate the tag I just deleted.
I know the idea is that tags are not "supposed" to be deleted, e.g. tagged releases, but sometimes mistakes happen.
Any advice?
The only solution I have found is to simply ask all the other developers to remove their local copies of the tags after you have deleted them from the remote. I found a script help here.