Git清理过大的git目录objects文件

  1. Git清理过大的git目录objects文件
 1. git rev-list --objects --all | grep "$(git verify-pack -v .git/objects/pack/*.idx | sort -k 3 -n | tail -5 | awk '{print$1}')"
  1. 找到最大的几个文件后,删除:
git filter-branch --force --prune-empty --index-filter 'git rm -rf --cached --ignore-unmatch *(路径)/**(文件名).*' --tag-name-filter cat -- --all
  1. 等命令执行完后,要提交到远程:
git push --force --all

此时你会发现本地目录中的.git文件并不会马上就变小,而是与原来是一样的,
是因为Git仓库历史有个缓存期,如果不主动回收、清理仓库历史,一般的这些记录还会保存一段时间,以备你突然后悔了,没办法找回删掉的文件。

  1. 通过以下命令主动回收资源:
rm -rf .git/refs/original/git reflog expire --expire=now --allgit fsck --full --unreachablegit repack -A -dgit gc --aggressive --prune=nowgit push origin <远程分支名称> --force# git push origin --force --tags
  1. 让远程仓库变小:
git remote prune origin

Git清理过大的git目录objects文件相关推荐

  1. Git objects文件夹下大文件清理

    Git objects文件夹下大文件清理 最近遇到git上工程突然变得很大,原因是.git/objects/pack 文件过大,之前上传过大文件,文件虽然删除,但是记录还在,在此先记录一下. # 例如 ...

  2. git服务器+查文件大小,Git项目过大清理(针对大文件)

    一.问题说明 如图,由于之前上传了一些比较大的文件,导致项目太大.即使后来删除,记录中还是保存了这个文件.以后不管是拷贝,还是push/pull都比较麻烦.这会导致所有人每次git fetch需要浪费 ...

  3. eclipse查看git地址_Git大文件管理:函数计算和OSS支持的Git LFS服务器

    此服务器支持Batch API和File Locking API.项目地址与文档: https://github.com/zhxxch/git-lfs-one/​github.com LFS 是个好东 ...

  4. git object 很大_这才是真正的Git——Git内部原理

    本文以一个具体例子结合动图介绍了Git的内部原理,包括Git是什么储存我们的代码和变更历史的.更改一个文件时,Git内部是怎么变化的.Git这样实现的好处等等. TL;DR 本文以一个具体例子结合动图 ...

  5. Git提交单个文件过大,git error: remote unpack failed:error Object too large

    Table of Contents 一. 上传git出错 二. git基本概念 三. 解决 参考链接 一. 上传git出错 error: remote unpack failed: error Obj ...

  6. Git中对大仓库的处理实践

    目录 1.背景 1.1处理拥有大量历史记录的库 1.1.1浅克隆是简单的的解决办法 1.1.2另一个解决办法是 filter-branch (过滤分支) 1.1.3浅克隆的替代者:只克隆一个分支 1. ...

  7. Git 系列(七):使用 Git 管理二进制大对象

    通过这系列的前六篇文章,我们已经学会使用 Git 来对文本文件进行版本控制的管理.我们不禁要问,还有二进制文件呢,也可进行进行版本控制吗?答案是肯定的,Git 已经有了可以处理像多媒体文件这样的二进制 ...

  8. git安装,windows下git bash默认目录更改

    最早Git是在Linux上开发的,很长一段时间内,Git也只能在Linux和Unix系统上跑.不过,慢慢地有人把它移植到了Windows上.现在,Git可以在Linux.Unix.Mac和Window ...

  9. 我又来说Git了, Git 与 SVN 大对比!

    Git不学好,Push两行泪 本文从 Git 与 SVN 的对比入手,介绍如何通过 Git-SVN 开始使用 Git,并总结平时工作高频率使用到的 Git 常用命令. 一.Git vs SVN Git ...

最新文章

  1. 面试准备--7.31
  2. linux里grep和egrep,fgrep的区别
  3. Knative 基本功能深入剖析:Knative Serving 的流量灰度和版本管理
  4. 简介struct cmsghdr结构
  5. CodeForces 230A
  6. 前端传递参数,由于控制器层类实现了struts2的ModelDriven而产生的一个异常
  7. 行为树(Behavior Tree)详细介绍
  8. 为什么越来越多的人从开发转测试?
  9. 8款免费的Windows数字签名软件【附下载】
  10. 枯燥的Kotlin协程三部曲(中)——应用实战篇
  11. 早晨随笔_早上如何调试
  12. python数列求和,怎样在python求和
  13. 自学软件测试需要多久?能掌握吗?
  14. 两台windows电脑通过以太网互ping
  15. @Vaild注解使用详解
  16. html流程svg动画,12款基于SVG的HTML5应用和动画
  17. 【计算机组成原理 学习总结】第六章 总线系统(2)
  18. 冀教版五年级计算机教学计划,冀教版信息技术五年级下册教学计划.doc
  19. Linux /根目录下子目录的存放内容
  20. 【上传文件】基于阿里云的视频点播VOD、对象存储OSS实现音视频图片等文件上传

热门文章

  1. 计算机软件技术基础 王海燕,北京大学机械考研经验-北大工学院考研辅导班
  2. JavaScript标签自定义属性
  3. 万拓超融合存储CS100-36
  4. 夜光带你走进php(3)
  5. 【php】pdo 模糊查询
  6. 17网API,item_search - 根据关键词取商品列表接口
  7. LeetCode Database知识点总结 - 1667
  8. 找人做网站需要花费上万元吗?
  9. 关于360浏览器对aspect-ratio不兼容解决方法
  10. 物联网python教程慕课_物联网技术(校慕课资源,物联网组)-中国大学mooc-题库零氪...