2013-01-15 108 views
13

我做混帐拉--rebase,我得到了以下错误:的Git没有剩余空间设备

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

我有很大的空间我的设备上。不知道它为什么显示这个错误。第一次我得到这个错误。有没有人遇到过这个问题?

谢谢。

+0

为什么会投票???请解释 – codeit

+1

可能的重复[Git Deploy - “文件写入错误(设备上没有剩余空间)”](http://stackoverflow.com/questions/4329730/git-deploy-file-write-error-no-space-留在设备上) – CharlesB

回答

8

你没有驱动器空间。从机器上的任意位置删除一些未使用的文件。在你做了一些清理之后,你可能会考虑运行git gc让git垃圾收集你的仓库;如果您最近对git的对象进行了大量更改 - 就像可能发生的rebase一样 - 您可以从git本身回收重要数据。在给git一些呼吸空间之后(因为gc需要一个小小的摆动空间将数据复制到新文件中),git gc将尽可能地压缩git存储库,而不会丢失存储库的历史记录。

+0

哈哈。这是天才。你不是这个意思吗:删除一些文件? – thang

+0

你的意思是来自/ tmp的文件或来自git的文件 – codeit

+0

任何地方,真的:你的整个驱动器都塞满了。从/ tmp清除下载,无论它需要什么。追逐那些蜘蛛网。 – Matt

2

这不是一个答案,而是一个澄清问题和实际问题的答案。当我在Windows 8.1系统和驱动器上有足够的空间时,我发现GIT定期吐出这种类型的错误代码。

运行5次并检查任务管理器中的内存后,我发现每次系统内存达到最大限制时都会触发此错误。它与可用的磁盘空间无关,所以尽管@ Matt的答案在某些情况下可能是正确的,但它们都不正确。

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

相关问题