为了账号安全,请及时绑定邮箱和手机立即绑定

使用Git时如何解决“错误:索引错误–致命:索引文件损坏”

使用Git时如何解决“错误:索引错误–致命:索引文件损坏”

Git
海绵宝宝撒 2019-10-14 10:20:45
之后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。


查看完整回答
反对 回复 2019-10-14
?
慕妹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")


查看完整回答
反对 回复 2019-10-14
  • 3 回答
  • 0 关注
  • 1606 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信