我正在尝试重复的git过滤器分支,其中留下了最后一条消息refs/heads/master is unchanged
。我读到这是因为备份已经存在所以我不得不摆脱它。所以我运行了git update-ref -d refs/heads/master
,现在没有任何提交,我似乎无法撤消这一点。有什么建议?
答案 0 :(得分:2)
我设法通过阅读this Stack Overflow question以及评论中的后续链接来解决此问题: Recovering Git repository from objects only。
使用git fsck
查找悬空提交哈希值列表
vim到您的.git/refs/heads/master
这只是一个文本文件,并输入代表您最新的master提交的可疑哈希值。
保存并返回根目录以检查git日志以查看它是否是您的最新信息。如果没有,那么系统地通过步骤1中的哈希,直到找到它。
找到它git checkout .
后,git恢复到主分支的原始状态