网站首页 > 精选文章 正文
最近想学习 DDD 架构,顺便克隆了一个有名的 DDD 框架开源项目 刚果商城(CongoMall) ,结果 git clone 时遇到了如下错误:
unable to create file
congomall-test-all/congomall-flow-monitor-agent-test/congomall-flow-monitor-message-provider-test/src/main/java/org/opengoofy/congomall/test/flowmonitor/agent/message/provide/rocketmq/FlowMonitorSpringCloudStreamRocketMQTest.java:
Filename too long
unable to checkout working tree
warning: Clone succeeded, but checkout failed.
You can inspect what was checked out with 'git status' and retry with 'git restore --source=HEAD :/'
大概意思是:Windows 文件路径过长 (默认 MAX_PATH = 260 ),导致 Git 无法创建对应文件。
我网上查了下解决办法,主要有几种,我用的是 方法 C (因为最简单,哈哈)。
#技术分享 #掘金解决方案
1. 启用 Windows 的长路径支持
Windows 10/11 可以通过组策略或注册表开启长路径。
方法 A:组策略
- Win + R 输入 gpedit.msc 打开组策略编辑器。
- 路径: 计算机配置 -> 管理模板 -> 系统 -> 文件系统 -> 启用 Win32 长路径 。
- 将其设置为 启用 。
- 重启电脑。
方法 B:注册表
如果你的 Windows 没有组策略(家庭版常见),可以用注册表:
reg add HKLMSYSTEMCurrentControlSetControlFileSystem /v LongPathsEnabled /t REG_DWORD /d 1 /f
然后重启电脑即可。
方法 C:Git 长路径支持(推荐)
直接让 Git 支持长路径:
git config --system core.longpaths true
2. 克隆到短路径目录
避免路径过长,比如:
cd C:git clone https://github.com/xxx/xxx.git c:
epo
3. 使用浅克隆( --depth 1 )
如果只想快速测试代码,不需要完整历史:
git clone --depth 1 https://github.com/xxx/xxx.git
4. Sparse Checkout(只下载指定目录)
只需要某些模块时可以这样:
git clone --no-checkout https://github.com/xxx/xxx.git
cd xxx
git sparse-checkout init --cone
git sparse-checkout set some/sub/path
git checkout
5. 如果仓库已部分克隆
可以重新签出:
git config core.longpaths true
git restore --source=HEAD :/
总结
最推荐的方式是直接执行:
git config --system core.longpaths true
或者把项目克隆到 路径较短 的目录(如 C: epo )。
猜你喜欢
- 2025-09-12 本地部署+低成本!这款开源AI音视频转文档工具火了
- 2025-09-12 AI一键生成高清短视频,这个开源神器让内容创作起飞!
- 2025-09-12 挖到一款逆天跨平台翻译神器,功能直接拉满!
- 2025-09-12 第二讲,ComfyUI 安装教程:小白也能轻松搞定
- 2025-09-12 开源文件预览与Office在线编辑的强大解决方案
- 2025-09-12 前端开发不想写重复代码?Open Lovable 1 秒克隆网站!
- 2025-09-12 magnet磁力搜索小工具_2021简单好用磁力搜索
- 2025-09-12 小白也能上手!手把手教你电脑部署DeepSeek,用AI工具提高生产力
- 2025-09-12 Windows 本地部署 LangChain 完整教程
- 2025-09-12 如何搭建一个git服务器?_如何搭建自己的git服务器
- 最近发表
- 标签列表
-
- 向日葵无法连接服务器 (32)
- git.exe (33)
- vscode更新 (34)
- dev c (33)
- git ignore命令 (32)
- gitlab提交代码步骤 (37)
- java update (36)
- vue debug (34)
- vue blur (32)
- vscode导入vue项目 (33)
- vue chart (32)
- vue cms (32)
- 大雅数据库 (34)
- 技术迭代 (37)
- 同一局域网 (33)
- github拒绝连接 (33)
- vscode php插件 (32)
- vue注释快捷键 (32)
- linux ssr (33)
- 微端服务器 (35)
- 导航猫 (32)
- 获取当前时间年月日 (33)
- stp软件 (33)
- http下载文件 (33)
- linux bt下载 (33)