赞
踩
.git/objects/pack 文件过大
可能是由于开发过程中上传过大文件,虽然现已删除,但仍然保存着git记录中。
解决办法:
一、删除仓库上的项目,重新提交代码。
二、彻底清除历史记录
1.识别出最大的三个文件
git verify-pack -v .git/objects/pack/pack-8eaeb...9e.idx | sort -k 3 -n | tail -3
- 296169a146c50dbc100a5d0ee5be87a45cd7cbb3 blob 50296832 49474116 291684796
-
- aae2c1bf6109f2729502349722b4c3402626d755 blob 77762481 77330392 78759794
-
- 35047899fd3b0dd637b0da2086e7a70fe27b1ccb blob 100534272 100014418 191670176
2.查询大文件的文件名
git rev-list --objects --all | grep 35047899fd3b0dd637b0da2086e7a70fe27b1ccb
35047899fd3b0dd637b0da2086e7a70fe27b1ccb /wabapi/bulid/master-0.0.1.jar
3.将该文件从历史记录的所有 tree 中移除
git filter-branch --index-filter 'git rm --cached --ignore-unmatch /wabapi/bulid/master-0.0.1.jar'
4.执行如下语句
- rm -rf .git/refs/original/
-
- git reflog expire --expire=now --all
-
- git fsck --full --unreachable
-
- git repack -A -d
-
- git gc --aggressive --prune=now
-
- git push --force
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。