《Git/Gitlab进阶》八:测试.git文件夹中object数量过大能否影响commit效率?

  • 时间:2022-03-15 15:02 作者:粤下巴人 来源: 阅读:964
  • 扫一扫,手机访问
摘要:在此往后的几篇文章,主要是说明少量使用 Git 时比较高级一点的问题或者者比较重要的问题。除了少量测试说明、功能详情、操作引导之外,还可以增长见识和思考方法,可以一看。有些测试截图是比较旧(也就几个月),但是目前来看,仍然是 ok 的。测试过程内容较多,每个步骤都逐一截图以便真实说明,也有列示用法。若

在此往后的几篇文章,主要是说明少量使用 Git 时比较高级一点的问题或者者比较重要的问题。
除了少量测试说明、功能详情、操作引导之外,还可以增长见识和思考方法,可以一看。

有些测试截图是比较旧(也就几个月),但是目前来看,仍然是 ok 的。

测试过程内容较多,每个步骤都逐一截图以便真实说明,也有列示用法。若不感兴趣,可直接查看总结部分。

测试过程

众所周知,.git 文件夹是 git 管理项目的本地仓库。objects 目录存储所有数据内容,每一次 git commit 都会将信息存到该文件夹。
这部分不清楚,可去官网Git 内部原理 - 底层命令和高层命令和Git 内部原理 - Git 对象等地方再巩固。
所以,一般情况下来看,git commit 的次数过多,object 文件夹体积就会变大,假如非常巨大了,会不会影响到提交的速度?

前置准备

将 github 中的两个项目 tensorflow 和 liunx,clone 一份到本地,并推到自建 gitlab 服务器(内网 1.0Gbps)中,作为测试项目远程仓库。
主要说明 Git 用户端的使用,所以本地需要安装 Git

大概流程

准备两个比较大的项目,分别测试单次 add 和 commit 的耗时。

测试步骤

1 以 tensorflow 项目为例进行 commit 测试
准备了一个 git 文件夹有 360M,提交数量超过 5W 的项目 tensorflow

1.png

测试 commit 之前,先提交一次已有的文件,以免出现干扰

2.png

在 tensorflow 中新建一个文件夹 newfoler,并随便放入几个文件

3.png

再测试 add 及 commit 的效果


4.png

两个命令耗时较短,并没有出现耗时的情况(第一个是 add,第二个是 commit)。排除切换页面和鼠标移动点击的时间,这两个命令耗时只有 1s 左右。

5.png

测试结果看来,一个有着 5W+commit 数量,git 文件夹超过 360M 的项目,在 commit 时并没有发生耗时很长的情况。

其实 git folder 要大于 500M 其实还是非常少的,我在 github 中找了非常久,到目前为止,就只发现 linux 项目超过 500M,提交数量超过 10W。

2 1 以 linux 项目为例进行 commit 测试
准备了一个提交数量和 git folder 都很大的项目(github 上的 linux 项目)

6.png

测试前,先add .一次,避免对 commit 提交速度进行干扰
(实际测试,clone 下来后,第一次git add .是比较耗时间的,好好几分钟)。

在 linux 下新建一个 new_folder 文件夹,并随便放入几个文件,如下

7.png

测试结果来看,完成 add 和 commit 的速度还是很快的

8.png

两个命令耗时较短,并没有出现耗时的情况(第一个是 add,第二个是 commit)。排除切换页面和鼠标移动点击的时间,这两个命令耗时只有 1s 左右。

9.png

再修改少量文件,删除少量文件

10.png

add 和 commit 的耗时仍然不多

11.png

总结

  • 这个 Linux 项目的 git 文件夹和 commit 数量是目前已经发现最大的项目,测试得出 add 和 commit 的时间都是很短,所以应该是不会出现 commit 非常耗时的情况。
  • 所以 commit 的数量太大不会影响 commit 的速度。
  • 全部评论(0)
最新发布的资讯信息
【系统环境|】2025含金量排名前十计算机专业证书(2025-10-15 20:51)
【系统环境|】你有白帽众测 我有黑帽雇佣(2025-10-15 20:50)
【系统环境|】印度理工学院成功开发出针对5G网络攻击的最新软件解决方案(2025-10-15 20:49)
【系统环境|】道德黑客与黑客教程(2025-10-15 20:49)
【系统环境|】苹果翻车!macOS 15 竟藏“后门”,黑客能直接偷你所有密码(2025-10-15 20:47)
【系统环境|】解密“被墙”玄学:为什么我的网络方案能做到长期稳定?(2025-10-15 20:46)
【系统环境|】NAS软路由/防火墙/网络安全需要注意哪些?如何保护你的网络设备(2025-10-15 20:45)
【系统环境|】你真的理解防火墙吗?(2025-10-15 20:44)
【系统环境|】苹果手机一键换机教程详解(2025-10-15 20:44)
【系统环境|】二手iPhone到手后怎么快速验机?(2025-10-15 20:43)
手机二维码手机访问领取大礼包
返回顶部