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

Node.js应用文件与Git仓库神秘丢失的调试方案咨询

Node.js应用使用nodegit时Git仓库及工作目录文件丢失问题

问题现象

  • 偶尔出现Git仓库部分文件神秘消失,仓库失效,执行Git命令时会报错:
    fatal: not a git repository (or any of the parent directories): .git
    
  • 检查.git目录,仅剩余以下内容(正常情况下包含更多文件,如config、HEAD等):
    total 0
    drwxr-xr-x   2 elsa  wheel   64 May 12 16:55 hooks
    drwxr-xr-x   2 elsa  wheel   64 May 12 16:55 info
    drwxr-xr-x  12 elsa  wheel  384 May 12 16:55 objects
    drwxr-xr-x   3 elsa  wheel   96 May 12 16:55 refs
    
  • 工作目录也存在文件丢失情况:丢失的都是应用读取过(创建后未更新)的文件,未丢失的是刚创建、尚未被应用读取的文件。

应用操作细节

  • 应用仅对工作目录进行文件读写操作,从不主动删除文件,文件系统操作依赖Node.js的fs模块
  • Git相关操作完全由nodegit内部处理,应用从不直接访问.git目录

触发相关场景

  • 问题数月内出现3-4次,无法准确定位或稳定复现
  • 最近一次发生在MacBook睡眠时应用仍在运行,唤醒后出现报错
  • 开发过程中频繁使用nodemon重启应用,也经常让MacBook进入睡眠模式

当前排查思路

  • 由于.git目录和工作目录均出现文件丢失,怀疑可以排除nodegit的问题
  • 计划尝试使用fs_usage工具监控文件系统操作,希望获取更多调试建议

内容的提问来源于stack exchange,提问作者katboo

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 00:52:14