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

  • 时间:2022-03-15 15:02 作者:粤下巴人 来源: 阅读:945
  • 扫一扫,手机访问
摘要:在此往后的几篇文章,主要是说明少量使用 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)
最新发布的资讯信息
【系统环境|】2FA验证器 验证码如何登录(2024-04-01 20:18)
【系统环境|】怎么做才能建设好外贸网站?(2023-12-20 10:05)
【系统环境|数据库】 潮玩宇宙游戏道具收集方法(2023-12-12 16:13)
【系统环境|】遥遥领先!青否数字人直播系统5.0发布,支持真人接管实时驱动!(2023-10-12 17:31)
【系统环境|服务器应用】克隆自己的数字人形象需要几步?(2023-09-20 17:13)
【系统环境|】Tiktok登录教程(2023-02-13 14:17)
【系统环境|】ZORRO佐罗软件安装教程及一键新机使用方法详细简介(2023-02-10 21:56)
【系统环境|】阿里云 centos 云盘扩容命令(2023-01-10 16:35)
【系统环境|】补单系统搭建补单源码搭建(2022-05-18 11:35)
【系统环境|服务器应用】高端显卡再度登上热搜,竟然是因为“断崖式”的降价(2022-04-12 19:47)
手机二维码手机访问领取大礼包
返回顶部