《Git/Gitlab进阶》十一:clone远程仓库很慢的解决

  • 时间:2022-03-15 14:03 作者:粤下巴人 来源: 阅读:682
  • 扫一扫,手机访问
摘要:上一篇有讲到克隆远程仓库,在 clone 时,假如每次都 clone 完整的仓库的话,随着提交的次数变多,在项目变大之后,clone 的速度会非常的慢。所以克隆时可以设定参数 depth 1,加快 clone 速度 depth代表克隆的深度, depth 1代表只克隆最新一次提交记录以及这

上一篇有讲到克隆远程仓库,在 clone 时,假如每次都 clone 完整的仓库的话,随着提交的次数变多,在项目变大之后,clone 的速度会非常的慢。

所以克隆时可以设定参数 --depth 1,加快 clone 速度

-- depth代表克隆的深度,--depth 1代表只克隆最新一次提交记录以及这次提交之后的最新内容,不克隆历史提交。

这样所造成的影响就是不能查看历史提交记录,但是克隆速度大大提升。

完整命令:

git clone --branch <branch_name> <remote-address> --depth 1

查看 commit 总数,可用:

git rev-list --all --count或者者git log --oneline | wc -l

后续补充:
注意,这里 git rev-list 查看到的提交数量,并不肯定和仓库中显示的提交数一样,获取的原理不同。后者是一致的。
详细请查看官方文档关于git rev-list的说明。

查看简要显示日志,可用:

git log --all --oneline

示例,今日(2019/12/25)克隆 github 中 tensorflow 项目,深度只有 1 层,
编写本文示例测试耗时大约4 分 15 秒,其它内容如下图:

1.png

而直接 clone master 分支的一律,
编写本文示例测试耗时大约13 分 30 秒,其它内容如下图:

2.png

2019/12/26 补充,假如想看实际耗时,在 git 命令前加 time 关键词。

假如后续想看完整的历史记录,可以将浅层克隆转换为常规克隆。使用:

git pull --unshallow或者者git fetch --unshallow

不过,这就是重新抓取了该分支所有的提交,也就不如直接一开始就拉取所有了。

使用示例(同样编写本文示例测试耗时大约13 分 30 秒):

3.png

查看当前分支所有提交者及其提交次数,按次数由高到低排序,可用:

git log | grep "^Author: " | awk '{print $2}' | sort | uniq -c | sort -k1,1nr
4.png
  • 全部评论(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)
手机二维码手机访问领取大礼包
返回顶部