You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Git仓库执行CLI命令时出现fatal: mmap failed: Operation timed out错误的修复求助

Git仓库执行CLI命令时出现fatal: mmap failed: Operation timed out错误的修复求助

遇到这种仓库损坏、工具突然找不到仓库的情况确实闹心,我来分享几个实际可操作的修复步骤,你可以一步步尝试:

  • 先做仓库完整性检查
    首先用Git自带的命令定位问题根源:

    • 执行 git fsck --full,这个命令会全面扫描仓库的对象数据库,找出损坏或缺失的对象,它会输出具体的问题点,帮你判断损坏程度。
    • 如果扫描出无效对象,可以接着执行 git prune 清理掉那些失效的对象,之后再重新运行git fsck --full看看问题是否缓解。
  • 解决mmap超时本身的问题
    这个错误通常和磁盘IO、内存配置或者磁盘空间有关:

    • 先检查你的磁盘剩余空间,如果磁盘快满了,Git无法正常读写对象就会触发这类错误,清理出足够空间后再试。
    • 可以调整Git的mmap内存配置,执行 git config --global core.mmapWindow 100M 增大mmap的窗口大小,有时候能解决超时问题;如果还是不行,也可以试试关闭mmap,执行 git config --global core.mmapWindow 0,让Git改用常规的文件读取方式。
  • 从备份或远程仓库恢复
    如果仓库损坏比较严重,这两个方法最稳妥:

    • 如果你之前手动备份过仓库文件夹,或者有其他本地副本,可以把损坏仓库的.git文件夹替换成备份里的,保留好工作区的文件后再尝试同步。
    • 如果仓库关联了远程仓库,先把本地工作区未提交的修改、stash里的内容手动复制到其他目录备份,然后删除损坏的本地仓库,重新克隆远程仓库,再把备份的文件放回新仓库,重新提交或恢复stash。
  • 排查GitHub Desktop的缓存问题
    有时候是工具本身的缓存异常导致的:

    • 完全关闭GitHub Desktop,找到它的缓存目录(Windows一般在C:\Users\[你的用户名]\AppData\Roaming\GitHub Desktop,Mac在~/Library/Application Support/GitHub Desktop),删除缓存文件后重新打开工具,看看能不能正常识别仓库。

备注:内容来源于stack exchange,提问作者saurav

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 14:28:07