git status给了我一个错误:糟糕的索引文件sha1签名
问题描述:
在我的git仓库中,我做了许多文件的utf-8转换,但只在.git目录下,因此没有触及.git目录。 在此转换之前,我创建了一个新的测试分支,但现在我无法再使用我的回购,我无法切换回主分支。 当我做:git status给了我一个错误:糟糕的索引文件sha1签名
git status
或任何其他的git命令我得到:
error: bad index file sha1 signature
fatal: index file corrupt
fatal: 'git status --porcelain' failed in submodule core/kimai-mobile
我搜索一下,找到了命令:
rm -f .git/index
,并在此之后:
git reset
但这没有'帮助。我不明白什么是错的。 然后我删除了“submodule”核心/ kimai-mobile,突然间我可以再次使用它!
我在这个目录中有这个其他的git仓库,在这个仓库中,我通过转换销毁了其他索引文件。 我的问题是,我认为“主”repositorys索引文件的意思。
现在重新工作:)
我的问题是,为什么混帐看看这个子模块,虽然我有这个子模块在我ignorelist的整个文件夹?
这是我的 “主” 混帐的忽略文件:
.gitignore
...
# kimai mobile
kimai-mobile
...
答
子模块完成git仓库。所以他们可以包含.git子目录(或至少一个链接到它)。
因此,如果您在根存储库根目录中的.git之外的所有文件上使用了您的工具,仍然可能会损坏子模块中的某些内部.git文件。
什么问题? – 2012-07-20 17:51:32