GitHub:Clone成功了,但结账失败了

jam*_*e_y 25 git github git-svn

我在使用时遇到了一些问题 git clone.这些文件是在我当地的git文件夹中下载的.运行命令

git checkout -f HEAD 给我-

错误:

'无法写入由于缺少磁盘空间而导致的新索引文件错误'.

我手动从我的计算机中删除了大文件,但仍然收到相同的错误.

Cloning into 'ffmpeg'...
remote: Counting objects: 7890, done.  
remote: Compressing objects: 100% (4412/4412), done.
Receiving objects: 100% (7890/7890), 299.75 MiB | 24.19 MiB/s, done.
remote: Total 7890 (delta 3346), reused 7846 (delta 3317)
Resolving deltas: 100% (3346/3346), done.
Checking out files: 100% (7019/7019), done.
fatal: unable to write new index file
warning: Clone succeeded, but checkout failed.
You can inspect what was checked out with 'git status'
and retry the checkout with 'git checkout -f HEAD'
Run Code Online (Sandbox Code Playgroud)

Jai*_*ash 21

对我来说,这是由于长文件名和做一个简单的配置如下解决它


git config --system core.longpaths true
Run Code Online (Sandbox Code Playgroud)

  • 很好..我已经编辑了 C:\Program Files\Git\etc\gitconfig 并在 [core] 标签中插入了 longpaths = true 。或者.. git config --global core.longpaths true 这对我有用。tks (6认同)

von*_*and 15

克隆时,git从远程端获取所有对象(压缩并存入.git目录).一旦它拥有所有部分,它就会继续解压缩(重新)创建工作目录所需的所有文件.由于没有足够的空间,这一步失败了.这可能是由于磁盘已满或超出磁盘配额(在共享计算机上,通常会强制执行配额以避免用户占用超过其公平份额的空间).

删除你的残酷.确保您没有尝试将Linux内核或某些此类怪物存储库压缩到几兆字节的帐户空间中.

  • @sashikanta 检查日志..如果是由于文件名太长,则尝试在 C:\checkout\ 等小路径上进行克隆 (3认同)
  • 就我而言,这是由于文件名太长 (2认同)
  • 如果文件名太长:/sf/ask/1580296371/ (2认同)

小智 13

在我的情况下,我的磁盘未满,这就是我解决它的方式:

  1. cd进入项目目录并通过运行取消暂存所有暂存的文件 git reset
  2. 通过运行撤消工作目录中的所有更改 git checkout *

完成这两个步骤后,您应该能够看到项目文件.


小智 9

我最近遇到了这个问题,错误是我克隆存储库的文件路径太大,您可以通过将存储库克隆到 C:\ 中的某个文件夹来进行测试


sal*_*e55 8

尝试从 Visual Studio 2017 (v15.6.0) 克隆存储库时遇到相同的错误。

在我的情况下,在本地安装GIT-LFS解决了这个问题。

  • 这里也是这种情况...错误消息是...```git-lfs 过滤器进程:git-lfs:找不到命令致命:远程端意外挂起警告:克隆成功,但签出失败。您可以检查使用 'git status' 签出的内容,然后使用 'git Restore --source=HEAD :/``` 重试...安装 git-lfs 解决了该问题 (2认同)

Aha*_*dul 7

就我而言,我通过以下方式解决了这个问题:

  1. 安装 git LFS
  2. git config --system core.longpaths true
  3. git config --global core.protectNTFS false

资源列表:

  1. https://git-lfs.github.com/
  2. https://confluence.atlassian.com/bitbucketserverkb/error-invalid-path-during-git-clone-to-windows-client-1085186345.html

我的驱动器未满


Gau*_*are 5

除了其他可能性之外,主要的可能是 Windows 对命名文件施加的规则。git clone 和 checkout 在 linux 上应该可以正常工作。

有关更多信息,请观看此 - https://github.com/msysgit/msysgit/issues/208


小智 5

在我的情况下,这是由于文件名中的冒号。一旦我改变了它们,一切都很好。

  • 我认为我的问题是由文件末尾的空格引起的——但是当您不是存储库的所有者时,如何纠正这个问题?错误:无效路径'hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/changelog/5_6_0/2837-search-with-not-modifier-on-multiple-codes.yaml' (5认同)

小智 5

这对我有用

git config --global core.longpaths true