Gitee 目前已经初步支持 Git 部分克隆
2020/2/15 9:04:31
本文主要是介绍Gitee 目前已经初步支持 Git 部分克隆,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
最近 Git 2.25.0 发布,此次发布推出了 partial clones 功能,partial clones 即用户克隆远程存储库的时候,可以选择只下载自身所需的对象,而不是存储库的所有对像(或者特定 commit 所关联的所有对像)。这和微软之前发布的 VFSForGit 原理有异曲同工之妙。使用部分克隆可以大大的减小用户克隆巨大存储库的耗时,也会减小网络数据传输。部分克隆完全依赖 Git Wire Protocol (v2 Protocol)。经过几行代码的适配和线上的批量更新,Gitee 目前已经支持部分克隆了,当你的 Git 版本大于等于 2.25.0,则可以使用如下的命令克隆特定的存储库:
git -c protocol.version=2 clone --filter=blob:none git@gitee.com:YOUR-COUNT/YOUR-REPO.git 复制代码
在这个命令中 -c protocol.version=2
确保始终使用 v2 协议(当然可以 git config -g protocol.version=2
设置始终使用 v2 协议), --filter
则对克隆过程进行过滤,详细说明如下:
更多的部分克隆过滤器参数信息可以参考:rev-list-options.txt#L735-L780
基于部分克隆实现稀疏检出(这里需要提前设置 git -c protocol.version=2
):
$ git clone --filter=blob:none --no-checkout /your/repository/here repo $ cd repo $ cat >.git/info/sparse-checkout <<EOF /* !/* EOF $ git config core.sparseCheckout 1 $ git checkout . 复制代码
关于稀疏检出的更多细节可以参考相关文档。
与浅表克隆不同的是,部分克隆能够创建提交,这和微软发布的 VFSforGit 类似,但 VFSforGit 实现了文件系统驱动级别的过滤器,可以使用文件系统占位符避免文件的下载,在读写这些文件时,ProjFS 则会从远程存储库下载这些文件。综合来看,Git 的部分克隆是一个巨大的进步,但还有很大的进步空间。
Git 2.25.0 更新信息如下:
这篇关于Gitee 目前已经初步支持 Git 部分克隆的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-11Linux部署Scrapy学习:入门级指南
- 2024-09-11Linux部署Scrapy:入门级指南
- 2024-08-21【Linux】分区向左扩容的方法
- 2024-08-21【Linux】gnome桌面环境切换KDE Plasma
- 2024-08-19如何安装 VMware Tools (macOS, Linux, Windows)
- 2024-08-15Linux部署Scrapy教程:入门级指南
- 2024-07-29linux命令行下好用的性能监控工具atop
- 2024-07-04Linux系统上离线升级SSH服务的具体操作步骤-icode9专业技术文章分享
- 2024-06-0600-macOS和Linux安装和管理多个Python版本
- 2024-03-30[译]漫画SELinux概念