0
点赞
收藏
分享

微信扫一扫

【智慧大屏】BI智慧大屏,大屏可视化解决方案(word原件)

伽马星系 2024-10-31 阅读 18
git

一、环境

Git 2.34.1

二、前言

一般来说,我们在克隆git仓库的时候,都是一整个仓库都克隆出来的。如果假设现在有一个很大的仓库,仓库里有多个子项目,而我们只想克隆其中一个子项目的时候,应该怎么做呢?

可以使用稀疏检出(sparse checkout)功能。

三、步骤

在这里插入图片描述
假设我们的仓库目录结构如上,repo是仓库名字,project1project2是仓库里的两个子项目,而我们现在希望只检出apple文件夹,其它的文件夹隐藏掉。

1)首先,执行以下命令克隆仓库:

git clone --no-checkout https://gitee.com/repo.git

https://gitee.com/repo.git是git仓库的地址,根据实际情况替换。因为使用了--no-checkout参数,所以克隆出来的仓库是看不到任何文件的,我们还需要执行稀疏检出操作。

2)开启稀疏检出功能:

cd repo
git sparse-checkout init

3)将apple文件夹添加到检出目录里:

git sparse-checkout set "/project1/apple/"

set命令后面可以跟多个子目录路径,例如:

git sparse-checkout set "/project1/apple/" "/project2"

如果多次执行set命令,后面的命令会覆盖前面的命令,如果不想覆盖,只是仅新增目录,可以使用add命令。

其它相关命令:

# 查看当前的稀疏检出目录有哪些
git sparse-checkout list

# 关闭稀疏检出功能
git sparse-checkout disable

# 在手动修改了.git/info/sparse-checkout文件的内容后,使修改生效
git sparse-checkout reapply

关于sparse-checkout命令更多的信息,参阅这里

4)检出

git checkout

完毕!

四、参阅

  • https://stackoverflow.com/questions/600079/how-do-i-clone-a-subdirectory-only-of-a-git-repository
举报

相关推荐

0 条评论