由于文件路径错误,Git克隆无法工作。

3

问题

在Windows 10机器上使用Git克隆存储库时,会出现以下错误:

错误:无效路径'saleor/graphql/core/tests/cassettes/test_get_oembed_data[http:/www.youtube.com/watch?v=dQw4w9WgXcQ-VIDEO].yaml'

致命错误:无法检出工作树

警告:克隆成功,但检出失败。

>git clone https://github.com/mirumee/saleor.git
Cloning into 'saleor'...
remote: Enumerating objects: 187180, done.
remote: Counting objects: 100% (289/289), done.
remote: Compressing objects: 100% (225/225), done.
remote: Total 187180 (delta 136), reused 131 (delta 64), pack-reused 186891
Receiving objects: 100% (187180/187180), 105.28 MiB | 234.00 KiB/s, done.
Resolving deltas: 100% (137187/137187), done.
error: invalid path 'saleor/graphql/core/tests/cassettes/test_get_oembed_data[http:/www.youtube.com/watch?v=dQw4w9WgXcQ-VIDEO].yaml'
fatal: 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 :/'

尝试过

我尝试了这个方法,但在最后一步没有起作用:

$ git init saleor
$ cd saleor
$ git remote add origin https://gitzzz.com/yyy/saleor.git -f

到目前为止一切都很好,但是这个命令会抛出错误:
$ git checkout origin/master -f
error: invalid path 'saleor/graphql/core/tests/cassettes/test_get_oembed_data[http:/www.youtube.com/watch?v=dQw4w9WgXcQ-VIDEO].yaml'

尝试过的方法

此外,这个方法也没有帮助。

问题

我如何在Windows上克隆/检出这个仓库?

解决方案

@bk2204建议的方法解决了这个问题:

  1. 复制该仓库
  2. 在Linux上克隆该复制品
  3. 在Linux上更改路径名称
  4. 提交并推送
  5. 然后在Windows上检出修复后的复制品
1个回答

4

问题在于路径中同时包含冒号和问号,你可能正在使用 Windows 系统。Windows 决定不允许这些字符在路径名称中出现,因此无法在 Windows 上检查该文件。

有几个选择:

  • 使用其他操作系统,如 macOS 或 Linux。
  • 使用 Windows Subsystem for Linux 检查该文件,这个系统不受这些限制。
  • 要么请负责存储库的一方更改路径名,要么在另一个环境中自己更改路径名,然后检出修复后的存储库。
  • 请 Microsoft 解决此问题。
  • 不使用这个存储库。

1
好的 =) 但是有没有一种方法可以更改.git目录内的错误文件路径?就像黑客攻击.git文件夹一样? - user3405291
1
我将尝试这个建议:在另一个环境中更改路径名,然后检出修复后的存储库。 - user3405291

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接