git branch -d <branch>:致命 - 无法查找HEAD的提交对象</branch>

时间:2013-05-20 14:15:53

标签: git

假设我在裸存储库(远程)中,如果我尝试删除git branch -d <branch_name>的分支,则会收到以下错误:

fatal: Couldn't look up commit object for HEAD

为什么呢?我有没有理由不能从裸存储库中删除分支?

4 个答案:

答案 0 :(得分:11)

确保在命令中使用capitol D,在这种情况下,您可以键入git branch -D <branch_name>。请注意,这只会从本地计算机中删除分支

如果您要删除远程分支,请键入git push origin :<branch_name>(请记住添加冒号)

答案 1 :(得分:2)

为避免这种混淆,您可以使用

  

“git push origin --delete branch_name”

这会删除远程分支而不是本地分支。

答案 2 :(得分:1)

在Windows资源管理器中找到文件.git / refs / heads / branch_name并直接将其删除。

答案 3 :(得分:0)

仅当默认分支(裸存储库文件夹中的分支HEAD指向 - 通常为master)在本地不存在时才会发生这种情况。 如果确实存在 - 您甚至可以从裸存储库文件夹中删除带有branch -d的分支(假设它已合并,则为-d)。

如果您正在使用git工作树 - 从工作树发出命令可能会成功(应该满足与工作树的HEAD相同的条件)