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
  • 相关阅读:
    LINUX开发使用的3个远程工具
    NDK 链接第三方静态库的方法
    GMap.NET 显示GIF图标的定制
    从MySQL获取数据
    web2py远程开发
    升级后,使用dynamic报错
    实用的MVVM:ImageView
    node.js 连接 mysql
    vector常见用法
    XCODE中配置使用boost
  • 原文地址:https://www.cnblogs.com/qinghe123/p/13230392.html
Copyright © 2011-2022 走看看