fatal: did not receive expected object

使用git clone命令复制项目,报错,如下图

要了解这个报错先得了解git clone的过程。git clone命令手下会下载整个仓库到本地,目录是./git/objects/pack,里面有个.pack文件(也可能有多个)。这个报错猜测应该是由于下载了这个文件后,检测到此文件有问题,然后导致clone失败。

这么猜测的原因是,通过如下操作,可以把.pack下载下来

1.mkdir testProj

2.cd test Proj

3.git init

4.git remote add origin myUrl

5.git pull

这样,可以把.pack下载下来

然后通过命令

git fsck --full

来验证.pack的有效性,当.pack正常时,如下图:

当.pack有问题时,如下图:

很明显,.pack中有object的异常,SHA1校验没通过

引起这个问题的原因目前还不清楚,一开始怀疑时硬盘问题,可是换了几个盘clone都没有成功

但是,换了电脑clone是正常的。

后来从同事那里拷贝了一份代码,通过git status .命令输出如下:

这时候问题就很明显了,是有三个文件,由于文件名有特殊符号(²),而我的系统没有识别这个特殊符号,从而产生一个错误的文件名。在看看之前的报错,也是三个报错,更加确信是这三个文件引起的问题,把这三个文件从git上删除掉,这个问题就解决了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值