Git Fatal

Out of memory

问题描述

当我们在git pull或者git clone 的时候,有时候会出现以下异常提示,导致我们操作失败:

fatal: Out of memory, malloc failed (tried to allocate 1048576000 bytes)

解决方法

1.修改git的缓存大小

git config --global pack.windowMemory 1024m

2.修改系统交换分区大小为4g

sudo fallocate -l 4G /swapfile

3.修改文件夹权限

sudo chmod 600 /swapfile

4.创建交换分区

sudo mkswap /swapfile

5.设置交换分区

sudo swapon /swapfile

6.编辑文件信息vim /etc/fstab并添加以下信息到文件中

/swapfile   none    swap    sw    0   0

7.设置虚拟机内存使用权重,值越小越使用物理内存,默认60

vm.swappiness=10

8.设置虚拟内存回收directory和inode缓冲倾向.这个值越大,越易回收.

该文件表示内核回收用于directory和inode cache内存的倾向;缺省值100表示内核将根据pagecache和swapcache,把directory和inode cache保持在一个合理的百分比;降低该值低于100,将导致内核倾向于保留directory和inode cache;增加该值超过100,将导致内核倾向于回收directory和inode cache。

vm.vfs_cache_pressure = 50