git - `git restore --source=HEAD :/` 在克隆具有长文件名的 repo 失败后不起作用
问题描述
在 Windows 上,当我尝试克隆包含具有长路径的文件的存储库(例如此存储库)时,它会失败:
我的问题不是如何解决这个问题(这里已经回答),而是关于它推荐的命令:
git restore --source=HEAD :/
当我运行git config core.longpaths true
该命令后它没有任何效果:该命令需要一段时间,但之后git status
仍然报告了很多更改。
但是,运行git reset --hard
没有问题并正确签出文件。
那么 Git 的建议使用git restore
不正确(至少在这种情况下)?
Git版本:2.33.0.windows.2
解决方案
当我运行
git config core.longpaths true
[推荐的git restore
]命令后它没有效果:该命令需要一段时间,但之后git status
仍然报告了很多变化。但是,运行git reset --hard
没有问题并正确签出文件。
这意味着 Git-for-Windows 中的一个错误。该错误可能很难修复(基本上 Git 不知道core.longpaths
在早期尝试中是如何设置的),但您应该报告它。
您可以尝试git restore --source=HEAD -SW :/
,这会使动作在git reset --hard
内部匹配,看看是否有效。如果是这样,也许解决方法是在此处更改默认建议。:-)
推荐阅读
- python - 如何从 Python 中的特定字母输出字符串的其余部分?
- c++ - 在 C++ 中的非托管可执行文件中运行托管可执行文件
- python - Alembic env.py 不读取 Flask 项目中的环境变量
- r - 导出为 pdf 时,ggsave 会更改图形
- dotnetnuke - Timelinejs, 2sxc 更改字体和语言
- reactjs - 与 GCP HTTP 端点反应
- kubernetes - 如何在 WSL 中访问 Kubernetes 集群节点
- angularjs - 使用 ng-repeat 和 $index 设置模型属性
- caching - 在 Snowflake 虚拟仓库的工作节点中如何处理缓存一致性?
- mysql - 使用 mysql 命令从一个 docker 容器到另一个