经过各种搜索,发现 github 好像不支持在 web 端删除 tag,如果要将 tag 的指向变为另一个 commit,那么似乎需要做的事情是从本地进行推送。
本地简单,先删除本地原来的 tag,然后重新建一个同名的 tag 指向到另一个 commit 就可以了。
删除本地 tag:
git tag -d tag-name
但是在推送的时候就遇到问题了,我们用的是下面的语句来推送本地的 tags。注意先把新的 commit 推送到远端哦~
git push --tags
这时候如果远端有原本的 tags,对应的 commit 指向不一致,就会报错,无法推送。这时候需要删除远端冲突的 tag,再次推送才能成功。如何删除远程 tag 呢?
git push origin :refs/tags/tag-name
学会了吗?