Skip to content

部分克隆技术

最近经常需要阅读 vercel、cloudflare、nuxt 等仓库的官方 template 模板仓库,这些仓库太大了,需要考虑学习部分克隆。

git 是有部分克隆的方式的。更加专业正式的称呼是: sparse-checkout

我们可以口语化的称呼部分克隆,正式称呼为稀疏检出

参考资料

实践教程
稀疏检出
其他参考资料

具体操作

以 cloudflare 的 worker-d1-api 目录举例:

我现在要在本地内仅克隆此目录。运行以下命令:

bash
git clone --filter=blob:none --sparse https://github.com/cloudflare/templates.git
cd templates
git sparse-checkout add worker-d1-api

参数配置具体含义见参考资料。

其他尝试

上述的方案有点不好用。以下是其他项目的稀疏检出实践:

参考资料
github cloudflare/workers-sdk
bash
git clone --filter=blob:none --sparse --depth=1 -n https://github.com/cloudflare/workers-sdk
cd workers-sdk
git sparse-checkout init --cone
git sparse-checkout add templates/worker-d1-api
git checkout

稀疏检出对仓库的支持程度有限么?

有点怀疑,比如云效、gitee 这一类仓库,对稀疏克隆的支持程度是否有限?

贡献者

The avatar of contributor named as ruan-cat ruan-cat

页面历史

布局切换

调整 VitePress 的布局样式,以适配不同的阅读习惯和屏幕环境。

全部展开
使侧边栏和内容区域占据整个屏幕的全部宽度。
全部展开,但侧边栏宽度可调
侧边栏宽度可调,但内容区域宽度不变,调整后的侧边栏将可以占据整个屏幕的最大宽度。
全部展开,且侧边栏和内容区域宽度均可调
侧边栏宽度可调,但内容区域宽度不变,调整后的侧边栏将可以占据整个屏幕的最大宽度。
原始宽度
原始的 VitePress 默认布局宽度

页面最大宽度

调整 VitePress 布局中页面的宽度,以适配不同的阅读习惯和屏幕环境。

调整页面最大宽度
一个可调整的滑块,用于选择和自定义页面最大宽度。

内容最大宽度

调整 VitePress 布局中内容区域的宽度,以适配不同的阅读习惯和屏幕环境。

调整内容最大宽度
一个可调整的滑块,用于选择和自定义内容最大宽度。

聚光灯

支持在正文中高亮当前鼠标悬停的行和元素,以优化阅读和专注困难的用户的阅读体验。

ON开启
开启聚光灯。
OFF关闭
关闭聚光灯。