遥控器上的重复标签

Duplicate Tag on Remote

我们正在使用 Bitbucket 作为 git 存储库的远程,但不知何故我们得到了一个重复的标签(我认为这是不可能的)。

当我尝试时:

git push --delete origin refs/tags/mytagName

我得到:

error: dst refspec refs/tags/mytagName matches more than one.
error: failed to push some refs to 'https://me@bitbucket.org/[etc]'

我可以在 bitbucket UI 中看到两个标签,但是(据我所知)它没有允许删除标签的功能。

有什么办法可以纠正这个问题吗?

编辑以回答一些评论问题:

How do you observe duplicate tags? Using git log or some sort of a GUI?

我可以在 BitBucket 中看到标签 UI。我还可以在本地 git 客户端 (GitExtensions) 中看到标签。

@torek:重复的标签名称中没有“^{}”。

@torek 和@Leon:重复标签确实在 .git/packed-refs 中出现了两次。它们显示为:

refs/tags/refs/tags/mytagName
refs/tags/mytagName

上面的评论让我找到了答案。

正如我编辑过的问题中所指出的,该标签在 .git/packed-ref:

中出现了两次
refs/tags/refs/tags/mytagName
refs/tags/mytagName

以下命令删除了其中一个标签:

git push --delete origin refs/tags/refs/tags/mytagName

我不清楚为什么 "refs/tags" 是重复的,或者它是如何以这种方式进入存储库的。