zoukankan      html  css  js  c++  java
  • git的pack文件太大

    .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
  • 相关阅读:
    返回三级联动的JSON数据
    返回三级联动的JSON数据
    python3访问map
    第十八讲、中介者模式
    第十七讲、命令模式
    第十六讲、模板方法模式
    第十五讲、组合模式
    第十四讲、享元模式
    第十三讲、装饰器模式
    第十二讲、桥接模式
  • 原文地址:https://www.cnblogs.com/qinghe123/p/13230392.html
Copyright © 2011-2022 走看看