git clone报“Filename too long”,克隆时误复制本地项目求助
问题排查与解决方案
一、.git目录意外包含同父目录其他项目的原因及修复
这种情况大概率是git工作区配置错误导致的,排查步骤:
- 检查全局
core.worktree配置
执行命令查看当前全局工作区设置:
如果输出是你的父目录路径(比如git config --global core.worktree/g/project),说明git被错误配置为将父目录作为全局工作区,克隆时会自动跟踪该目录下的所有文件(包括a、b、c项目),导致.git体积异常增大。
修复命令:git config --global --unset core.worktree - 检查克隆路径是否错误
确认克隆时是否误将父目录(/g/project)作为目标路径,而非子目录(/g/project/project-x)。如果是,先删除父目录下的.git文件夹,再重新指定正确路径克隆:rm -rf /g/project/.git git clone <repo> /g/project/project-x
二、"Filename too long" 错误修复
针对Windows系统
Windows默认限制文件路径长度,开启git长路径支持:
git config --global core.longpaths true
执行后重新克隆即可。
针对Linux/macOS系统
这类系统的文件系统(如ext4、APFS)有路径长度上限(通常为4096字符),可尝试以下方案:
- 浅克隆(仅获取最新版本,适合不需要完整历史的场景):
git clone --depth 1 <repo> - 克隆后重命名超长路径文件:克隆完成后(如果能部分克隆),用
git mv修改超长路径的文件名,再拉取完整历史。 - 联系仓库管理员,要求修改仓库内超长路径的文件名称。
内容的提问来源于stack exchange,提问作者The Abyss Watcher
相关产品推荐
相关产品推荐

