Git 个标签已显示,但我无法删除其中一个

Git tags are displayed but I can't delete one of them

就是这样:

我用 git tag

显示我的标签

但是无法删除其中一个,这是我存储库中的最后一个标签,我想用最新的提交重新创建它。

它说:

错误:标记...未找到。

我看到它在列表中,但当我尝试删除它时却找不到。我可能做错了什么?

检查这里是否需要单引号:

git tag -d -- Retrofit2_Hatakontrolu

请注意 the double hyphen syntax '--' 的使用,以便将命令与其参数分开。

另外,标签名中的check for the presence of special characters,在Linux(Git)bash.

export LESS="-CQaix4r"
git tag|less

如果单引号是标签名称的一部分,请尝试:

git tag -d -- 'Retrofit2_Hatakontrolu'
# or (escaping single quotes):
git tag -d -- \'Retrofit2_Hatakontrolu\'

我还做了一些噩梦,删除了 bitbucket ci 管道创建的 git 标签。

名字是

master-release-"1.0.1"-build-15

并由 accident 包含引号。

出于某种原因,bitbucket git 在执行时接受了标签名称中的特殊字符cial 字符

readonly VERSION="$(jq '.version' version.json)"
git tag -a master-release-${VERSION}-build-15 -m "some info"

And yes, I know where was the problem. I forgot to take raw output from jq ,)

对我不起作用的东西。

本地:

git tag -d master-release-"1.0.1"-build-15
git tag -d -- master-release-"1.0.1"-build-15
git tag -d 'master-release-"1.0.1"-build-15'
git tag -d -- 'master-release-"1.0.1"-build-15'
git tag -d "master-release-\"1.0.1\"-build-15"
git tag -d -- "master-release-\"1.0.1\"-build-15"

远程:

git push origin :refs/tags/[and different options]

对我有用的解决方案。

本地:

已编辑文件

/.git/packed-refs

并手动删除了两行(标签有两行一行)

f7e37ce5c22d2bf72b8962a93444b45277cab8fd refs/tags/master-release-"1.0.1"-build-15
^d7e57222e548949a74c84af48a0fac6779425e72

和刚刚消失的地方:)

远程:

VARIABLE="\"1.0.1\""
git push origin :refs/tags/master-release-${VARIABLE}-build-15

祝你好运。