之后git init,我添加并提交了一些文件,进行了一些更改,添加并提交了。设置git守护程序(在WinXP上的Cygwin下运行)并克隆存储库一次。现在,我在克隆的存储库中收到此错误:$ git statuserror: bad index file sha1 signaturefatal: index file corrupt除了获取存储库的新副本之外,还有什么方法可以解决此问题?
3 回答
心有法竹
TA贡献1866条经验 获得超5个赞
如果问题在于索引是提交的暂存区域(即.git/index),则可以简单地删除索引(如果需要,可以创建备份副本),然后在上一次提交中将索引恢复为版本:
在OSX / Linux上:
rm -f .git/index
git reset
在Windows上:
del .git\index
git reset
(reset上面的命令与相同 git reset --mixed HEAD)
您也可以使用较低级别的管道 git read-tree代替git reset。
如果问题出在packfile的索引上,则可以使用进行恢复git index-pack。
慕妹3146593
TA贡献1820条经验 获得超9个赞
您可能在项目根目录上使用sed意外损坏了.git / index文件(可能在重构吗?),如下所示:
sed -ri -e "s/$SEACHPATTERN/$REPLACEMENTTEXT/g" $(grep -Elr "$SEARCHPATERN" "$PROJECTROOT")
为了避免将来发生这种情况,只需使用grep / sed忽略二进制文件即可:
sed -ri -e "s/$SEACHPATTERN/$REPLACEMENTTEXT/g" $(grep -Elr --binary-files=without-match "$SEARCHPATERN" "$PROJECTROOT")
- 3 回答
- 0 关注
- 1606 浏览
添加回答
举报
0/150
提交
取消