Windows 11中Git文件名过长报错,设置core.longpaths仍未解决
解决Windows下Git 1.9.0文件名过长问题
1. 确认core.longpaths配置的作用范围
你执行的git config core.longpaths true是仓库级配置,仅对当前仓库生效。若后续新建仓库需重复设置。先检查配置是否生效:
git config --get core.longpaths
若返回true说明配置已生效;若无返回,重新执行并添加--global参数,让配置对所有仓库生效:
git config --global core.longpaths true
2. 清理Git缓存并重新追踪文件
即便配置生效,之前的缓存可能仍保留旧的路径检查状态。执行以下命令重置缓存并重新添加文件:
git rm -r --cached . git add . git commit -m "Fix long path tracking"
完成后再执行git status,查看报错是否消失。
3. 检查Windows系统的长路径限制
Git 1.9.0的长路径支持依赖Windows系统底层能力:
- 若使用Windows 7或更早版本,系统本身限制路径长度为260字符,Git的
core.longpaths无法绕过该系统级限制,只能通过缩短项目存放路径(比如将项目放在C:\proj\这类浅层级目录)解决。 - 若使用Windows 10 1607及以上版本,可通过修改系统设置启用长路径支持:
- 打开组策略编辑器(
gpedit.msc),导航至计算机配置 > 管理模板 > 系统 > 文件系统,启用启用Win32长路径。 - 或修改注册表:在
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem下,将LongPathsEnabled的值设为1(DWORD类型)。
- 打开组策略编辑器(
4. 考虑升级Git版本
Git 1.9.0是2014年的旧版本,后续2.x系列版本对Windows长路径的支持更为完善,修复了不少早期兼容性bug。升级至最新稳定版可大概率解决此类问题。
5. 临时优化:缩短node_modules路径
若以上方法均无效,可尝试用npm dedupe命令优化node_modules目录结构,减少路径层级:
npm dedupe
该命令会合并重复依赖包,缩短深层路径长度,从而避开Git的路径限制。
内容的提问来源于stack exchange,提问作者Douglas Guzman
相关产品推荐
相关产品推荐

