有时候Github(或者Gitee等)的一个项目里面包含多个独立的子项目,但是整个项目又比较大,而我们需要的只是其中一个或者几个子项目就可以了,如果我们将整个项目下载的话很多是没有用的项目,浪费存储空间,更重要的是下载时间变得更长了。


其实Git给我们提供了只下载一个项目中某个或者多个子文件夹的方法,需要用到的命令如下(注意:在git-bash上执行成功但是在PowerShell上失败,所以要用git-bash执行以下命令):

1
2
3
4
5
6
git init Android-Sensor #Android-Sensor为文件夹名(项目名),可以随便填写
cd ./Android-Sensor/ #进入项目目录
git config core.sparsecheckout true #配置core.sparsecheckout为true
echo 'sensor-graph' >> .git/info/sparse-checkout #sensor-graph为仓库中你想要下载/克隆的文件夹名(项目名),如果是多个文件夹就执行多条命令,将文件夹名改一下就就行了。
git remote add origin https://gitee.com/xxx/ndk-samples.git #添加远程仓库
git pull origin master # 拉取远程仓库内容

以项目https://github.com/android/ndk-samples为例,如果只需要传感器的项目(对应文件夹为sensor-graph)的话

那么就可以通过下图所示的步骤实现(由于下载github项目很慢,所以将其导入到Gitee,然后再下载/克隆,详细参见解决Github项目下载克隆慢的问题)。

温馨提示: 要用git-bash运行以上命令哦!

原文链接:

最后修改日期:2020年5月14日

留言

撰写回覆或留言