stalkerzhang 2013-11-19
commit或pull时报以下错误:
$gitstatus
error:badindexfilesha1signature
fatal:indexfilecorrupt
解决方法:
解決此問題非常簡單,要先刪除index檔案,請先砍掉.git/index,恢復此index請用
gitreset
這行指令相當於gitreset–mixedHEAD,或者是可以用gitread-tree來取代gitreset,當然gitreset不只是有這功能而已,假如您已經建立了commit訊息,也可以將此訊息拿掉,重新在commit,或者是您修改過的檔案在暫存區,git也可以幫您恢復到未暫存,或者是不想要這次的修改,也可以恢復到未修改的檔案喔。
linux环境切换到项目目录,删掉.git/index文件,然后执行gitreset。
参考资料
http://blog.wu-boy.com/2010/08/git-%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6%EF%BC%9A%E5%88%A9%E7%94%A8-git-reset-%E6%81%A2%E5%BE%A9%E6%AA%94%E6%A1%88%E3%80%81%E6%9A%AB%E5%AD%98%E7%8B%80%E6%85%8B%E3%80%81commit-%E8%A8%8A%E6%81%AF/