在 Windows 上使用 Git 时,常遇到'filename too long'报错,或在提交代码时深层目录下的文件无法添加到暂存区。这并非 Git 的问题,而是 Windows 系统的默认路径长度限制所致。
一、问题根源
Windows 默认规则限制文件完整路径不能超过 260 个字符。而许多项目(如 Java、C# 等后端项目)采用多层目录组织代码,加上 Git 仓库路径,极易超过此限制。此时 Git 因 Windows 不允许创建过长路径而报错。macOS 或 Linux 上基本不会遇到此问题。
二、解决方案
方案 1:Git 自身配置(推荐首选)
无需修改系统设置,只需开启长路径支持。
- 以管理员身份打开 Git Bash 或命令提示符。
- 执行以下命令(全局生效):
git config --global core.longpaths true
- 验证是否成功:
git config --get core.longpaths
若返回 true,说明配置成功。重启终端或 IDE 后再次操作。
方案 2:系统级开启长路径(适合 Windows 专业版/企业版)
通过组策略编辑器解除路径长度限制。
- 按
Win + R,输入gpedit.msc,回车。 - 依次展开:计算机配置 → 管理模板 → 系统 → 文件系统。
- 双击右侧的 '启用 Win32 长路径',选择'已启用',点击'确定'。
- 重启电脑,设置生效。
方案 3:修改注册表(适合 Windows 家庭版)
- 按
Win + R,输入regedit,打开注册表编辑器。 - 建议先备份注册表:点击'文件 → 导出',保存备份。
- 定位到以下路径:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem - 在右侧找到或新建一个名为
LongPathsEnabled的 DWORD 值,双击将其值设为1(十六进制)。 - 重启电脑,设置生效。
三、注意事项
- 配置后仍报错? 检查路径是否超过 32767 字符。如果是,只能缩短路径,例如将仓库克隆到根目录(如
D:\repo\)。 - 务必使用管理员权限 无论是配置 Git 还是修改注册表,请务必以管理员身份运行终端或编辑器,否则设置可能不生效。
- 团队协作建议 如果项目中有 Windows 用户,建议在 README 中说明需执行
git config --global core.longpaths true,避免因路径问题影响协作。 - 临时应急 如果赶时间,可将仓库克隆到路径较短的目录(如
E:\project),临时解决问题。
四、总结
遇到 Windows 下 Git 报 filename too long:
- 先尝试执行
git config --global core.longpaths true(使用管理员权限的终端)。 - 重启终端或 IDE。

