git库的膨胀导致:[remote rejected] master -> master (pre-receive hook declined) error: failed to push s

某天回家,本地修改好相关文档,开始推送到远程,结果,idea报了个错:

Push rejected
Push master to origin/master was rejected by remote

为避免idea的问题,又用git bash手动push,结果还是报错:

 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@xxxxx.git'

首先考虑是分支权限的问题,尝试过后发现不是。

(解决办法其他博客有相关介绍,这里不废话多说了)

然后考虑是远程仓库与本地仓库并不一致的问题,尝试过后也不是。

(解决办法其他博客有相关介绍,这里不废话多说了:例如https://www.cnblogs.com/wurendao/p/11732876.html,但是不建议使用git push -u origin master -f,这样的操作相当于是删除远程分支然后提交当前分支,导致的结果是别人提交的代码都丢失,只有自己的最新代码)

那就真的奇了怪了,之前推送还好好的,怎么突然之间用不了了呢?

百度解决不了的问题,只能自己摸索了,于是我仔细看了错误git bash界面的提示信息:

Total 3 (delta 1), reused 0 (delta 0)
remote: Powered by GITEE.COM [GNK-5.0]
remote: This repository(including wiki) size 1033.32 MB, exceeds 1024.00 MB.
remote: Push rejected for repository size exceeds limit.
remote: HelpLink:           https://gitee.com/help/articles/4232
remote: Repository GC:      https://gitee.com/tt1996/data/settings#git-gc
remote: Enterprise Edition: https://gitee.com/enterprises#commerces
To gitee.com:tt1996/data.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@xxxxdata.git'


重点来了,就是那句size 1033.32 MB, exceeds 1024.00 MB.

我想这不可能,这个仓库我只放了一些文档,不可能超过1024mb,本地看了下大小,确实没有,只有三百多兆。那为什么提示大小超过了1024mb呢?

于是我去gitee控制台,查看了下仓库大小,**,确实是1033mb大小。。。

这是为什么呢?

原来是因为git库的膨胀?详细介绍可以参考知乎文章:https://www.zhihu.com/question/27826922/answer/477074035

这里只说一下解决办法,对于使用gitee的,很简单,就是做一下存储库GC

gitee目前没有lfs。

 

如果是使用的不是gitee,如其它的GitHub,gitlab等,可以使用git lfs方案。

相关git lfs,可参考:

https://www.cnblogs.com/cangqinglang/p/13097777.html

https://blog.youkuaiyun.com/wangji5850/article/details/104491208

 

 

 

 

 

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

架构帅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值