我的 git 存储库发生了一件奇怪的事情。当我尝试在 tortoisegit 窗口中提交某些内容时,我收到了来自项目的所有文件。我无法还原它们,当我从服务器 pull 出时收到 fatal: No such ref: HEAD
和 fatal: 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/