如何修复会破坏现有标签的问题

how to fix the would clobber existing tag problem

我在 git 标记方面遇到了麻烦,现在我的构建管道(信号量)因以下错误消息而中断。不知道如何解决这个问题。

错误信息

Unpacking 
objects: 100% (32/32), done.
From github.com:jack/my-app
   c8a2420..75ea515  develop         -> origin/develop
   b4069ce..9f672e1  feature/RY-1144 -> origin/feature/RY-1144
   8dbf387..ac9db9d  master          -> origin/master
 ! [rejected]        v1.46.0         -> v1.46.0  (would clobber existing tag)
 * [new tag]         v1.47.0         -> v1.47.0

更新

我正在使用带有一些扩展的可视化代码,并在可视化代码中查看回购历史,看起来标签可以删除?如果我点击标签 'v1.46.0' 旁边的 'x' 然后提交并推送(使用跟随标签)这会解决我的问题吗?

原因是:您远程上的标签 v1.46.0 与本地克隆(您的 CI 服务器本地)上的标签 v1.46.0 不指向同一提交。


一个。检查 v1.46.0 标记是否指向远程服务器上的正确提交(如果需要,请手动更新),

b。通过 运行 以下两个命令之一强制更新 CI 服务器上的标签:

# to force update all tags :
git fetch --tags --force

# to force update only this specific tag :
git fetch origin -f v1.46.0:refs/tags/v1.46.0

此问题已通过 运行 以下命令解决,用于删除远程

上的违规标签
git push --delete origin v1.46.0

一般来说,您可以使用git tag -l显示您本地的git标签,然后git tag -d <tag_name>删除错误标签。
在您的具体情况下,您需要使用 git tag -d v1.46. 来解决您的问题。