git tag删除并重新添加


71

在git hub上,我通过执行以下操作重新添加了标签:

git tag -d 12.15
git push origin :refs/tags/12.15
git tag -a 12.15 -m '12.15'
git push --tags

该标记仍然引用github上的旧标记,但是在本地它是正确的。

更新:似乎github列出了最后一次提交错误,但正确下载了它。


16
git tag -d删除标签。实际上我来这里是为了寻找... :)
Andreas Fliesberg 2013年

Answers:


80

参考是https://stackoverflow.com/a/5480292/1317035

您只需要将“空”引用推送到远程标记名称:

git push origin :tagname

或者,更富表现力的是,使用以下--delete选项:

git push --delete origin tagname

将分支,标签或其他引用推送到远程存储库涉及指定“将位置,来源,目的地何处推送”。

git push where-to-push source-ref:destination-ref

一个真实的示例,其中将您的master分支推到原点的master分支是:

git push origin refs/heads/master:refs/heads/master

由于默认路径,可以将其缩短为:

git push origin master:master

标签的工作方式相同:

git push refs/tags/release-1.0:refs/tags/release-1.0

通过省略源引用(冒号之前的部分),将“无”推到目标,删除远端的引用。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.