删除一个名字很糟糕的git分支

时间:2011-01-07 15:28:19

标签: git git-branch

我不小心创建了一个名为“遥控器/原点/遥控器/原点/ aclark”的分支,并且无法将其删除:

git branch -d remotes / origin / remotes / origin / aclark

Git说:

错误:未找到分支'遥控器/原点/遥控器/原点/ aclark。

我在这里尝试了一些建议:Deleting a badly named git branch,但它们更倾向于以“ - ”开头的坏分支名称。

最终用户有没有办法删除这个分支,还是需要git admin? (有问题的分支住在有名的地方)。

由于

亚历

1 个答案:

答案 0 :(得分:11)

这是一个远程分支,因此您需要在服务器上删除它。要做到这一点,你需要推送一个空引用。

$ git push origin :remotes/origin/aclark

注意,git push命令的语法是:

$ git push <remote> <local-reference>:<remote-branch-name>

因此,在这种情况下,我们正在推送一个空引用,而远程名称是我们想要销毁的分支的名称。在您的情况下,分支名称“remotes / origin / remotes / origin / aclark”表示它是远程服务器名称“origin”上的远程分支,远程服务器上的名称是“remotes / origin / aclark”。

另一个客户端需要发出以下命令以将分支从其本地存储库中删除(如果它们存在无效分支时获取):

$ git fetch origin
$ git remote prune origin

可以在git-pushgit-remote联机帮助页中找到更多信息。