新同事拉取仓库代码,结果报错pack - out of memory
,我们是自己搭建的gitlab,一查服务器的仓库大小,文件有一个多G的大小,拉取代码时,服务器内存直接撑爆了,这就很奇怪了,因为我们的这个项目正常10M之内,这么大肯定是有问题的。
查了一下,发现是某个日志文件,每次提交100M,提交的次数过多,导致容量暴增,但是这个日志文件是可以忽略的,所以就需要把这个文件清理掉。如果你也是这种情况,可以查看后面的教程
git自带的命令和第三方工具,你可以选择任一方式进行处理
一、git自带的命令
1.1、找出提交过的大文件,这里列举出前5个
git rev-list --objects --all | grep "$(git verify-pack -v .git/objects/pack/*.idx | sort -k 3 -n | tail -5 | awk '{print$1}')"
1.2、删除指定大文件的提交记录
并不是全部删除所有的大文件,你要确认这个大文件是没用的,然后再指定删除,例如大文件的名字叫dawenjian.zip
,命令就是下面这个
git filter-branch -f --prune-empty --index-filter 'git rm -rf --cached --ignore-unmatch dawenjian.zip' --tag-name-filter cat -- --all
1.3、清理缓存
git reflog expire --expire=now --all && git gc --prune=now --aggressive
1.4、强制提交(有风险)
因为要用本地修改过的记录去覆盖,所以需要强制提交本地修改
git push origin --force --all
在gitlab
中,master默认是保护的分支,可能强制提交会报错protected
之类的,这样需要先去后台把protected的分支关闭掉保护,然后再强制提交
二、使用工具
工具就是别人封装过的bfg-repo-cleaner,官网地址:https://rtyley.github.io/bfg-repo-cleaner/
依赖于java
运行环境,如果未按照java
的运行环境,需要先安装,然后将该脚本下载到本地,修改文件名为bfg.jar
,命令行里面的bfg.jar
都要带路径的。首先进入的仓库
cd some-big-repo.git
2.1、找出提交过的大文件,这里列举出前5个
git rev-list --objects --all | grep "$(git verify-pack -v .git/objects/pack/*.idx | sort -k 3 -n | tail -5 | awk '{print$1}')"
也可以使用该工具自带的命令行,例如查找100M以上的文件
java -jar /Users/damon/Downloads/bfg.jar --strip-blobs-bigger-than 100M
2.2、删除指定大文件的提交记录
并不是全部删除所有的大文件,你要确认这个大文件是没用的,然后再指定删除,例如大文件的名字叫dawenjian.zip
,命令就是下面这个
java -jar /Users/damon/Downloads/bfg.jar --delete-files dawenjian.zip hcses-warehouse.git --no-blob-protection
2.3、清理缓存
git reflog expire --expire=now --all && git gc --prune=now --aggressive
2.4、强制提交(有风险)
因为要用本地修改过的记录去覆盖,所以需要强制提交本地修改
git push origin --force --all
在gitlab
中,master默认是保护的分支,可能强制提交会报错protected
之类的,这样需要先去后台把protected的分支关闭掉保护,然后再强制提交
三、结束
如果操作一个分支没反应,可以试试切换不同的分支全部来一波。操作之前提前备份哦~
参考链接
版权属于:东哥笔记 - DongGe.org
本文链接:http://dongge.org/blog/1105.html
自2017年12月26日起,『转载以及大段采集进行后续编辑』须注明本文标题和链接!否则禁止所有转载和采集行为!
3 条评论
最后一步强推的时候报错了,请问又遇到吗
error: 远程解包失败:index-pack abnormal exit
试试push命令后面加个 --no-thin
Enjoy daily galleries
http://varanasiviud.porn.hoterika.com/?katrina
milford porn free porn vids and pics forum sex girl porn porn asphyxia making your own porn