问题

如果git中提交了大文件,而且保存到了版本库中,那在下载或者克隆git包的时候,速度会非常慢。再加上github在国内访问本来就很慢,可能会导致包无法下载(克隆)。为了提升下载(克隆)速度,可以永久的删除这些文件(包括该文件的历史记录),操作方法如下;

方法

# 查看 git 文件对象大小

git count-objects -v

# 列出体积最大的 top10

git verify-pack -v .git/objects/pack/pack-*.idx | sort -k 3 -g | tail -10

# 4bdc96af2540a6002a60e0f8026ac6edb8ceec7f blob 2104539 2103812 68220097

# bcaab23744d18bf7d80e2914a4820e199954b7a7 blob 2681512 2679930 52983447

# d0dd82d41145885996285a67d119862256e09b3d blob 2689821 2685468 70323909

# 查看具体文件名称

git rev-list --objects --all | grep <commit-id>

# 栗子:git rev-list --objects --all | grep bcc72e78c11b79c3744ae6b0cc36806b6d02dde5

# 结果:4bdc96af2540a6002a60e0f8026ac6edb8ceec7f public/images/background/bg4.jpg

# 清除该文件

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

# 栗子:git filter-branch --force --index-filter "git rm --cached --ignore-unmatch 'public/images/background/bg4.jpg'" --prune-empty --tag-name-filter cat -- --all

# 清空 git 历史

rm -rf .git/refs/original/

git reflog expire --expire=now --all

git gc --prune=now

git gc --aggressive --prune=now

# 如果这一步有权限不足的问题,需要手动到github上将master分支的保护去掉

git push origin master --force

# 清理远程仓库

git remote prune origin

github删除文件_github 仓库中删除历史大文件相关推荐

  1. 从git仓库中删除.idea文件夹的小技巧

    这篇文章主要介绍了从git仓库中删除.idea文件夹的小妙招,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下 如果不配置.gitignore的文件,带push ...

  2. elementui如何在input 框中搜索_在 Windows 10 中的文件资源管理器中删除搜索历史记录...

    Windows 资源管理器带有搜索功能,用户可以通过该功能找到特定的文件或文件夹.默认情况下,您在搜索框中进行的所有搜索都会保存到其历史记录中.下次您在搜索框中输入内容时,它将在下拉对话框中显示最近输 ...

  3. Linux 删除权限 umask,linux中的umask控制文件或目录的默认权限

    umask命令可以控制着创建文件或目录时指定给文件或目录的默认权限.它使用八进制表示法表示从文件模式属性中删除一个位掩码.使用不带任何参数的umask命令,查看当前掩码值.一般都是0002或0022. ...

  4. Linux fs清理文件,linux找出已经删除但磁盘空间未释放的大文件并清空

    linux找出已经删除但磁盘空间未释放的大文件并清空 1.找出已经删除但磁盘空间未释放的文件 如果文件已经删除,但实际的磁盘空间未释放,这个时候文件句柄fd相关信息还在内存中,可以通过lsof命令找出 ...

  5. 使用bfg快速清理git历史大文件

    文章目录 使用bfg快速清理git历史大文件 步骤 脚本 清理服务器 使用bfg快速清理git历史大文件 之前写过一篇的,使用的git命令清理的大文件,但是我3G多的git,.git文件夹里面的pac ...

  6. Vue项目中遇到了大文件分片上传的问题

    Vue项目中遇到了大文件分片上传的问题,之前用过webuploader,索性就把Vue2.0与webuploader结合起来使用,封装了一个vue的上传组件,使用起来也比较舒爽. 上传就上传吧,为什么 ...

  7. linux如何找大文件夹,Linux系统中如何查找大文件或目录文件夹的方法

    Linux系统中如何查找大文件或文件夹的方法 在Windows系统中,我们可以使用TreeSize工具查找一些大文件或文件夹,非常的方便高效,在Linux系统中,如何去搜索一些比较大的文件呢?下面我整 ...

  8. Linux系统中如何查找大文件或目录文件夹的方法

    Linux系统中如何查找大文件或文件夹的方法 在Windows系统中,我们可以使用TreeSize工具查找一些大文件或文件夹,非常的方便高效,在Linux系统中,如何去搜索一些比较大的文件呢?下面我整 ...

  9. 快速传输大文件,怎么通过网络传大文件给对方(1G以上)

    在生活和工作中,我们总是要发送一些比较大的文件给别人,或者在自己的设备之间.在互联网日益发达的今天,我们可以用什么方法通过互联网快速传输大文件,发送1G以上的文件? 一.使用QQ传 在电脑上打开QQ, ...

最新文章

  1. kafka window环境搭建
  2. 阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第8节 Math类_18_数学工具类Math...
  3. docsify管理学习笔记
  4. SPOJ - NUMOFPAL Number of Palindromes(回文自动机)
  5. 2019.01.23【NOIP普及组】模拟赛C组总结
  6. raster | R语言中的空间栅格对象及其基本处理方法(Ⅲ):切片/掩膜、图层叠加...
  7. 比特币最主流,以太坊大跌,区块链技术“万金油”红利已结束 | 区块链开发者年度报告...
  8. Beta阶段第1周/共2周 Scrum立会报告+燃尽图 06
  9. Chapter 1: 使用引用类型
  10. Linux和UNIX操作系统的关系及区别(详解)
  11. 局域网IP扫描工具-OpUtils
  12. 干货|读完这篇,再也不担心基金从业考试!
  13. 川大网页多媒体设计【李天翼班】资料整理
  14. vc 写一个计算机功能,VC++的一个实例
  15. 计算机大类专业分流问题,2019级计算机大类专业分流实施细则
  16. 什么镜头最适合拍风景_外出旅游,用什么镜头拍风光照比较好?
  17. PDF文件转换文件格式
  18. 【阶段1】【定理证明】二项式定理证明
  19. 大学不会教,但是程序员第一天工作需要知道的事儿...
  20. arduino接收hmi屏幕_求助 连接 Arduino 与威伦通触摸屏

热门文章

  1. 工业交换机为什么需要进行高低温检测?
  2. POE交换机产品如何设计防雷保护?
  3. 【渝粤题库】陕西师范大学200971教育经济学 作业(专升本、高起本)
  4. 【渝粤题库】陕西师范大学163201 旅游科学引论作业(专升本)
  5. 【渝粤题库】广东开放大学 电子商务安全与支付 形成性考核
  6. 【渝粤题库】国家开放大学2021春2322物流信息技术题目
  7. oracle utf8 varchar,Oracle中字符集的类型决定varchar2的字符长度
  8. Java连接微软ad_Java:连接到Active Directory(AD)?
  9. 常见的集成逻辑门(CMOS\TTL\ECL)
  10. 接口中定义的成员变量是( )。_抽象与接口