你如何删除已被推送的git标签?
你如何删除已被推送的git标签?
您只需要将“空”引用推送到远程标记名称:
git push origin :tagname
或者,更具表现力,使用 --delete
选项(或 -d
如果您的git版本低于1.8.0):
git push --delete origin tagname
如果您还需要删除本地标记,请使用:
git tag --delete tagname
将分支,标记或其他引用推送到远程存储库涉及指定“推送何处,什么来源,什么目的地?”
git push where-to-push source-ref:destination-ref
将主分支推送到原始主分支的真实示例是:
git push origin refs/heads/master:refs/heads/master
由于默认路径,可以缩短为:
git push origin master:master
标签的工作方式相同:
git push origin refs/tags/release-1.0:refs/tags/release-1.0
这也可以缩短为:
git push origin release-1.0:release-1.0
通过省略源ref(冒号前的部分),将'nothing'推送到目标,删除远端的ref。
您只需要将“空”引用推送到远程标记名称:
git push origin :tagname
或者,更具表现力,使用 --delete
选项(或 -d
如果您的git版本低于1.8.0):
git push --delete origin tagname
如果您还需要删除本地标记,请使用:
git tag --delete tagname
将分支,标记或其他引用推送到远程存储库涉及指定“推送何处,什么来源,什么目的地?”
git push where-to-push source-ref:destination-ref
将主分支推送到原始主分支的真实示例是:
git push origin refs/heads/master:refs/heads/master
由于默认路径,可以缩短为:
git push origin master:master
标签的工作方式相同:
git push origin refs/tags/release-1.0:refs/tags/release-1.0
这也可以缩短为:
git push origin release-1.0:release-1.0
通过省略源ref(冒号前的部分),将'nothing'推送到目标,删除远端的ref。
更简单的方法是
git push --delete origin YOUR_TAG_NAME
在这种情况下,IMO前缀冒号语法有点奇怪
如果你有一个远程标签 v0.1.0
删除,你的遥控器是 origin
,然后简单地说:
git push origin :refs/tags/v0.1.0
如果您还需要在本地删除标记:
git tag -d v0.1.0
看到 亚当佛朗哥的答案 解释Git的异常 :
删除语法。
删除所有本地标记并获取远程标记列表:
git tag -l | xargs git tag -d
git fetch
删除所有远程标签
git tag -l | xargs -n 1 git push --delete origin
清理本地标签
git tag -l | xargs git tag -d
要从远程存储库中删除标记:
git push --delete origin TAGNAME
您可能还想在本地删除标记:
git tag -d TAGNAME
从您的终端,执行以下操作:
git fetch
git tags
git tag -d {tag-name}
git push origin :refs/tags/{tag-name}
现在去Github.com刷新,他们就消失了。
请注意,如果您有一个名为远程标记的远程分支,则这些命令不明确:
git push origin :tagname
git push --delete origin tagname
因此,您必须使用此命令删除标记:
git push origin :refs/tags/<tag>
这一个删除分支:
git push origin :refs/heads/<branch>
如果没有,你会得到这样的错误:
error: dst refspec <tagname> matches more than one.
error: failed to push some refs to '<repo>'
如果您已创建一个名为的标记 release01
在Git存储库中,您可以通过执行以下操作将其从存储库中删除:
git tag -d release01
git push origin :refs/tags/release01
要从Mercurial存储库中删除一个:
hg tag --remove featurefoo
请参考 https://confluence.atlassian.com/pages/viewpage.action?pageId=282175551