Git - 无法删除远程分支

7

我无意中创建了一个名为“0.2”的git分支,该名称也是一个标签。

因此,我尝试从源中删除它:

$ git branch -rD origin/0.2
Deleted remote branch origin/0.2

但是接着:
$ git fetch origin
 * [new branch]      0.2        -> origin/0.2

我在推送时遇到了以下错误:

$ git push --force origin :0.2
error: dst refspec 0.2 matches more than one.

所以我删除了远程标签:

$ git tag -d 0.2
$ git push origin :refs/tags/0.2

仍然无法进行:

$ git branch -rD origin/0.2
 * [new branch]      0.2        -> origin/0.2
  1. 这是一个git的bug吗?
  2. 除了标签和分支名相同外,我是否做错了什么?
  3. 如何删除这个远程分支?

4
你尝试过使用命令 git push origin :0.2 吗? - Matt Greer
1
远程标签还存在吗?另外尝试运行 git remote prune origin - CharlesB
git branch -rD origin/0.2 对于最新的 Git 版本来说,与 git push origin :0.2 是相同的。是的,远程标签仍然存在。我也尝试了 prune - shkschneider
2个回答

3
这对我有用:

这适用于我:

$ git push --delete origin refs/heads/0.2

2

通常,在删除了标签(本地和远程)后,运行git push --force origin :0.2应该能正确删除它。


确实,将我的两个命令一起执行解决了问题。谢谢。 - shkschneider

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接