记一次 git lfs Smudge error: Error downloading 错误的处理。

问题:

拉取最新的工程代码 执行git pull 命令,原本一切顺利但是突然出现了 Smudge error: expected json type got "" 的错误。

解决过程:

  1. 从字面理解是未获取到对应的文件使用了git lfs prune 打算清理掉lfs的缓存来处理 (无效)

  2. 思考了一下打算先取消lfs对json文件的追踪使用命令 git lfs untrack "*.json" 再次执行 git lfs prunegit pull 错误从原来的 Smudge error: expected json type got "" 变成了 Smudge error: Error downloading XXX.json not found: [404]

  3. 404这个错误应该都明白就是源服务器找不到对应的文件了,应该是其他人被提交或者删除了文件的信息导致SHA1的改变。

  4. 既然知道文件已经有了,转变思路通过git工具查看 Error downloading XXX.json这个文件SHA1,并且利用git revert XXX.json将其还原成HEAD对应SHA1(这注意这个命令一定要在别的还原之后进行,否则又还原了lfs)

  5. 再次执行git lfs prune 清理缓存

  6. 执行git pull 问题得以解决

结果:

  1. 执行 git revert XXX.json

  2. 执行git lfs prune

  3. git pull

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐