我的编程空间,编程开发者的网络收藏夹
学习永远不晚

git的pack文件有什么作用

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

git的pack文件有什么作用

本文小编为大家详细介绍“git的pack文件有什么作用”,内容详细,步骤清晰,细节处理妥当,希望这篇“git的pack文件有什么作用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

在git中,pack文件可以有效的使用磁盘缓存,并且为常用命令读取最近引用的对象提供访问模式;git会将多个指定的对象打包成一个成为包文件(packfile)的二进制文件,用于节省空间和提高效率。

本文操作环境:Windows10系统、Git2.30.0版、Dell G3电脑。

git的pack文件有什么用

Git的pack文件经过精心构造,可以有效地使用磁盘缓存,并为常用命令和读取最近引用的对象提供“不错”的访问模式。

Git的包文件格式相当灵活(见文档/技术/包,format.txt,或将打包文件在Git的社区图书)。

打包文件以两种主要方式存储对象:“未删除”(获取原始对象数据并进行压缩压缩)或“删除”(针对某个其他对象形成增量,然后对生成的增量数据进行压缩压缩)。

数据包中存储的对象可以按任何顺序排列(不必(不必)按对象类型,对象名称或任何其他属性排序),并且可以针对相同类型的其他任何合适的对象制作已删除的对象。

Git的pack-objects命令使用了几种启发式方法,可以为常见命令提供出色的参考位置。

这些启发式方法既控制了已删除对象的基础对象的选择,又控制了对象的顺序。

每种机制大部分都是独立的,但是它们有一些共同的目标。

Git确实形成了增量压缩对象的长链,但是试探法试图确保只有“旧”对象在长链的末端。

core.deltaBaseCacheLimit自动使用增量基本缓存(其大小由配置变量控制 ),并且可以大大减少需要读取大量对象(例如git log-p)的命令所需的“重建”次数。

增量压缩启发式典型的Git存储库存储大量对象,因此无法合理地比较所有对象以找到将产生最小增量表示形式的对(和链)。增量基数选择启发式算法是基于这样的思想,即可以在文件名和大小相似的对象中找到良好的增量基数。

每种类型的对象都是单独处理的(即,一种类型的对象永远不会用作另一种类型的对象的增量基础)。

出于增量基数选择的目的,对象(主要)按文件名和大小排序。进入此排序列表的窗口用于限制被视为潜在增量基础的对象数量。

扩展知识:

.git/objects/pack 文件过大

可能是由于开发过程中上传过大文件,虽然现已删除,但仍然保存着git记录中。

解决办法:

一、删除仓库上的项目,重新提交代码。

二、彻底清除历史记录

识别出最大的三个文件

git verify-pack -v .git/objects/pack/pack-8eaeb...9e.idx | sort -k 3 -n | tail -3296169a146c50dbc100a5d0ee5be87a45cd7cbb3 blob   50296832 49474116 291684796 aae2c1bf6109f2729502349722b4c3402626d755 blob   77762481 77330392 78759794 35047899fd3b0dd637b0da2086e7a70fe27b1ccb blob   100534272 100014418 191670176

查询大文件的文件名

git rev-list --objects --all | grep 35047899fd3b0dd637b0da2086e7a70fe27b1ccb35047899fd3b0dd637b0da2086e7a70fe27b1ccb /wabapi/bulid/master-0.0.1.jar

将该文件从历史记录的所有 tree 中移除

git filter-branch --index-filter 'git rm --cached --ignore-unmatch  /wabapi/bulid/master-0.0.1.jar'

执行如下语句

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

读到这里,这篇“git的pack文件有什么作用”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

git的pack文件有什么作用

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

git的pack文件有什么作用

本文小编为大家详细介绍“git的pack文件有什么作用”,内容详细,步骤清晰,细节处理妥当,希望这篇“git的pack文件有什么作用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。在git中,pack文件可以有效的
2023-07-02

git bash有什么作用

这篇文章主要讲解了“git bash有什么作用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“git bash有什么作用”吧!git bash是用于git版本控制,上传下载项目代码用的;git
2023-07-02

hosts文件有什么作用

这篇文章主要介绍了hosts文件有什么作用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。hosts文件是一个用于储存计算机网络中各节点信息的计算机文件;作用是将一些常用的网址
2023-06-06

ntuser.dat文件有什么作用

这篇“ntuser.dat文件有什么作用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“ntuser.dat文件有什么作用”文
2023-02-02

asp文件有什么作用

ASP 文件(Active Server Pages 文件)在 Web 开发中具有以下作用:动态内容生成:ASP 文件允许在服务器端嵌入脚本代码,通过这些代码可以实现动态内容的生成和呈现。通过服务器端脚本,可以根据用户请求、数据输入或其他条
2023-07-10

windows的hosts文件有什么作用

这篇“windows的hosts文件有什么作用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“windows的hosts文件有
2023-07-01

linux tar文件有什么作用

本文小编为大家详细介绍“linux tar文件有什么作用”,内容详细,步骤清晰,细节处理妥当,希望这篇“linux tar文件有什么作用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
2023-04-13

windows hosts文件有什么作用

今天小编给大家分享一下windows hosts文件有什么作用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。hosts文件的
2023-07-01

shellexecute头文件有什么作用

ShellExecute头文件是Windows API中的一个头文件,它提供了一种简单的方法来启动外部应用程序或打开文件。通过调用ShellExecute函数,可以打开文件、启动应用程序、创建快捷方式、打开网页等。这个函数还可以接收参数,例
2023-06-13

pictures文件夹有什么作用

这篇文章主要介绍了pictures文件夹有什么作用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇pictures文件夹有什么作用文章都会有所收获,下面我们一起来看看吧。pictur
2023-03-06

php中的文件锁有什么作用

这篇文章主要介绍“php中的文件锁有什么作用”,在日常操作中,相信很多人在php中的文件锁有什么作用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php中的文件锁有什么作用”的疑惑有所帮助!接下来,请跟着小编
2023-06-20

hosts文件是什么及有什么作用

这篇文章主要介绍了hosts文件是什么及有什么作用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇hosts文件是什么及有什么作用文章都会有所收获,下面我们一起来看看吧。hosts文件是什么:1、hosts文件是
2023-07-01

Oracle redo log文件有什么作用

这篇文章主要介绍“Oracle redo log文件有什么作用”,在日常操作中,相信很多人在Oracle redo log文件有什么作用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Oracle redo l
2023-06-19

c++中string的头文件有什么作用

c++中的string头文件包含定义了std::string类模板、字符串操作函数和相关常量,用于创建、操作和管理可变长度的字符序列。C++ 中 string 头文件的作用C++ 中的 string 头文件包含了定义 std::strin
c++中string的头文件有什么作用
2024-05-11

Apache的.htaccess文件是什么有何作用

Apache的.htaccess文件是一个配置文件,用于在Apache服务器上配置和控制网站或特定目录的行为。它位于网站的根目录或特定目录中,可以包含一些重要的设置和指令,用于修改服务器的行为、设置访问权限、重定向URL等。.htacce
Apache的.htaccess文件是什么有何作用
2024-07-05

为什么git提交文件没有勾号

在使用Git进行代码管理时,我们常常会遇到提交文件时没有勾号的情况。这种情况会让我们感到困惑,不知道是否提交成功。为了更好地理解这种情况,本文将对其进行详细分析,并探讨其原因和解决方法。一、Git提交文件没有勾号的情况在使用Git进行版本控
2023-10-22

电脑mfc110.dll文件有什么作用

这篇文章主要介绍了电脑mfc110.dll文件有什么作用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇电脑mfc110.dll文件有什么作用文章都会有所收获,下面我们一起来看看吧。mfc110.dll是什么文件
2023-07-04

git怎么删除Git仓库中的所有文件

在使用 Git 进行版本控制时,有时候我们需要删除 Git 仓库中的所有文件。这在两种情况下很有用:当你想要清空 Git 仓库并重新开始时,这个操作可以快速地删除所有文件。当你意外添加了不应该在 Git 中跟踪的文件时,这个操作可以帮助你方
2023-10-22

manifest文件的作用是什么

这篇文章主要介绍“manifest文件的作用是什么”,在日常操作中,相信很多人在manifest文件的作用是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”manifest文件的作用是什么”的疑惑有所帮助!
2023-03-14

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录