当前位置: 首页 > news >正文

Git删除大文件历史记录

Git删除大文件历史记录

  1. git clone 仓库地址

  2. 查看大文件并排序

    git rev-list --objects --all |grep $(git verify-pack -v .git/objects/pack/pack-*.idx | sort -k 3 -g | tail -1|awk '{print $1}')
    
  3. 删除大文件

    git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch path_to_your_big_file' --prune-empty --tag-name-filter cat -- --all
    

    –ignore-unmatch后面写你第2步看到的大文件的路径

    注意:若有多个分支,可能要切换后再删除;

    注意:使用步骤2)进行验证,是否真的删除了,删除后,将不返回任何信息。

  4. 清理历史记录

    rm -rf refs/original/git reflog expire --expire=now --allgit gc --prune=nowgit gc --aggressive --prune=now
    
  5. 强行推到远端

    注意这里是关键,网上所有的教程都是用的

    git push --force --all
    

    之类的命令,这种命令是错误的,–all无法推送所有的引用而–mirror可以

    要使用如下命令:

    git push --force --mirror
    

    大功告成!

http://www.lryc.cn/news/6190.html

相关文章:

  • Seata-Server分布式事务原理加源码(一) - 微服务之分布式事务原理
  • 【ZooKeeper】zookeeper源码9-ZooKeeper读写流程源码分析
  • Python实现批量导入xlsx数据1000条
  • Ubuntu20.04安装redis与远程连接
  • SAS应用入门学习笔记5
  • PHP新特性集合
  • 【开发环境配置】--Python3的安装
  • postman实现接口测试详细教程
  • 使用crontab执行定时任务
  • 剑指 Offer 56 - II. 数组中数字出现的次数 II
  • C语言学习笔记(八): 自定义数据类型
  • Video Speed Controller谷歌视频加速插件——16倍速
  • VSCode 的下载安装及基本使用
  • 【操作系统】磁盘IO常见性能指标和分析工具实战
  • SpringMVC基础
  • 低代码开发平台|制造管理-质检管理搭建指南
  • 推荐一个.Ner Core开发的配置中心开源项目
  • Vue3+vite4使用mockjs进行模拟开发遇到的坑
  • 一起Talk Android吧(第四百九十三回:动画知识总结)
  • 腾讯云企业网盘正式入驻数字工具箱
  • 2.13练习
  • 【iOS】APP IM聊天框架的设计(基于第三方SDK)
  • centos安装FastDFS,集成到SpringBoot中
  • 看透react源码之感受react的进化
  • 【最优化理论】线性规划
  • 数据库测试的认知和分类
  • MQ中间件概念一览
  • 爱尔兰公司注册要求及条件
  • Java中如何打印对象内存地址?
  • CF1707E Replace