混帐 'fatal: No such ref: HEAD'

标签 git tortoisegit

我的 git 存储库发生了一件奇怪的事情。当我尝试在 tortoisegit 窗口中提交某些内容时,我收到了来自项目的所有文件。我无法还原它们,当我从服务器 pull 出时收到 fatal: No such ref: HEADfatal: Cannot lock the ref 'HEAD'。我所有的本地分支机构都不见了。有什么办法可以解决这个问题吗?

这不是第一次提交之类的。这件事发生得很突然。

编辑:

git branch -a 说:无法将 HEAD 解析为有效引用

git status 打印所有标记为新文件的项目文件。

我更改了一段时间的存储库文件夹名称,当我改回它时,情况就不正确了。

最佳答案

您丢失了HEAD,所以您需要重新创建它。最简单的做法就是这样。

echo ref: refs/heads/master >.git/HEAD

现在您应该能够运行其他 git 命令并查看您所在的位置。

(尽管从理论上讲,您可以尝试执行 git symbolic-ref HEAD refs/heads/master 较新的 git 版本无法将 .git 识别为git 存储库,除非它已经包含一个 HEAD,所以这将无法创建一个新的。)

关于混帐 'fatal: No such ref: HEAD',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4848607/

相关文章:

git - 如何在 git push 后运行 bash 脚本

git - 如何使用 git-svn clone 仅从 Subversion 存储库获取 HEAD 修订版?

git - 撤消脏工作树上的 git stash pop

git - BitBucket - 下载 ZIP 格式的源代码

git - GitHub 的 TortoiseGit 问题跟踪器集成

git - 为什么git认为这是cherry pick之后的冲突?

git - 如何编辑推送的 git commit 的提交消息

Windows cmd git bash : conda. sh 没有这样的文件或目录(Windows 行结尾,缺少斜杠)

git - TortoiseGit:如何查看即将推送的提交列表

git - 进入项目根目录的 .gitignore 不会被进入子目录的 .gitignores 覆盖