不知何故,我进入了一个状态,其中有一些git repos没有refs
目录,但是确实有packed-refs
文件。尝试使用这些存储库时,git会立即出现以下错误:
fatal: not a git repository (or any of the parent directories): .git
我要做的只是创建一个空的refs
目录,并且git可以正常工作,甚至报告有关存储在packed-refs
文件中的分支的所有信息。
没有refs
目录但有packed-refs
文件的git repo是否真的被视为无效?我的存储库是怎么进入这种情况的?
这些存储库是bundler
使用的存储库。例如,他们在:
/usr/local/lib/ruby/gems/2.3.0/cache/bundler/git/resque-841a12220f681ab6c7edba71d186ddfb64ee193f
删除这些目录,或在其下创建空的refs
目录都可以解决问题。仍然令人困惑为什么会发生这种情况。