25

我做了git pull --rebase,我得到了以下错误:

 error: file write error (No space left on device)
 fatal: unable to write sha1 file 
 fatal: unpack-objects failed

我的设备上有很多空间。不知道为什么会显示这个错误。

我第一次得到这个错误。

4

8 回答 8

14

您的驱动器空间不足。从您机器上的任何位置删除一些未使用的文件。在你完成一些大扫除之后,你可能会考虑运行git gcgit 垃圾收集你的存储库;如果你最近对 git 的对象进行了很多更改——就像 rebase 可能发生的那样——你可以从 git 本身回收重要数据。在给 git 一些喘息的空间之后(因为 gc 在工作时需要一点空间来将数据复制到新文件中),git gc将尽可能压缩您的 git 存储库,而不会丢失存储库的历史记录。

于 2013-01-15T06:37:49.277 回答
5

这与其说是一个答案,不如说是对问题的澄清以及问题的实际可能是什么。当我的 Windows 8.1 系统和驱动器上有足够的空间时,我发现 GIT 会定期吐出这种类型的错误代码。

在运行 5 次并在任务管理器中检查内存后,我发现每次系统内存接近最大限制时都会触发此错误。它与可用磁盘空间无关,因此虽然@Matt 的回答在某些情况下可能是正确的,但并非对所有情况都正确。

任务管理器报告 GIT 使用的内存比例很低,但每次 GIT 运行它都会增加使用的内存。此问题似乎与 GIT 中的内存泄漏有关。

于 2016-01-28T06:54:16.413 回答
3

推送到远程时我遇到了类似的错误,实际上这不是由于我的本地计算机上没有足够的空间,而是在 Git 服务器上。

只需检查完整的错误,例如我得到:

Failed to write to log, write /var/log/gitlab/gitlab-shell/gitlab-shell.log: no space left on device

通知我错误来自gitlab-shell,而不是git

于 2020-08-11T13:41:56.283 回答
1

要添加到另一个答案,说明:

每次 GIT 运行时,它都会增加使用的内存。此问题似乎与 GIT 中的内存泄漏有关。

Git 2.20(2018 年第四季度)专注于压缩 Git 中已知的最后一个内存泄漏案例,在 ref-filter 代码路径中堵住了少量内存泄漏。

请参阅Olga Telezhnaya ( ) 的提交 f0062d3提交 deec6b8提交 23941dd(2018 年 10 月 18 日(由Junio C Hamano 合并 -- --提交 9d00100中,2018 年 10 月 30 日)telezhnaya
gitster


Git 2.24(2019 年第四季度)更正了“ for-each-ref”(以及显示 refs 的朋友没有保护自己免受古老标签的侵害)在被要求显示“ %(taggername)”时没有记录标注名称。

请参阅Mischa POSLAWKY ( ) 的提交 8b3f33e(2019 年 8 月 17 日(由Junio C Hamano 合并 -- --提交 a477abe中,2019 年 9 月 9 日)shiar
gitster

ref-filter: 初始化空名称或电子邮件字段

$(taggername)由于SIGABRT提交f0062d3 ( munmap_chunk(): freeref-filter item->value and item->value->s, 2018-10-19, Git v2.20.0-rc0)。

于 2018-11-04T00:00:13.663 回答
0

在我的例子中,.gitconfig 被存储在一个网络位置,它基本上保留了我机器的所有配置文件,因此,如果 PC 死机,公司可以在新硬件上恢复相同的配置。无论如何,这个网络驱动器空间不足,所以 git 无法更新文件。您可以增加网络驱动器空间,或者只是断开它,git 将使用主驱动器上的本地配置。

于 2019-08-20T09:43:37.560 回答
0

我使用 Git bash 控制台遇到了这个问题。通过在没有更多问题的地方使用 Windows 控制台。我可以克隆存储库。

于 2020-01-02T09:40:11.917 回答
0

在我的情况下,它的远程设备空间不足,而不是本地机器。所以如果你的本地机器有足够的空间,也许你应该检查远程机器。

于 2022-01-26T02:15:32.607 回答
-3

我通过在我的办公桌上做空间解决了我在 mac 中的问题,如果你的办公桌满了,它会给出这样的错误。

于 2020-06-04T07:58:53.633 回答