如何在github/gitlab上下载单个文件夹?用git就可以 您所在的位置:网站首页 github下载指定文件夹 如何在github/gitlab上下载单个文件夹?用git就可以

如何在github/gitlab上下载单个文件夹?用git就可以

2023-08-22 17:14| 来源: 网络整理| 查看: 265

转自https://www.jianshu.com/p/74a0441ed9b7

在查看源码的过程中,相信很多人都像我一样,遇到某个公司或个人的repository是几个项目的集合整理,而我只要其中某个项目文件夹。那不依赖其他软件,怎么通过git去下载呢???

重点来了 下面直接给个例子,然后再解释说明。相信读者会更容易理解和操作。

阿里热修复sophix demo

 

上图画红色圈圈的是阿里最新推出的热修复框架sophix的demo,也就是我想下载的文件夹 hotfix_android_demo 。

我们一步一步操作先,最后会给出在GitBash上完整操作的截图。

先进入到你要存放的路径

$ cd

我的操作 : $ cd D:/android/demo/SophixDemo

我的SophixDemo文件夹是刚刚创建的空文件夹。想在命令行里创建文件夹的话,那就$ mkdir 文件夹名称

创建一个空的本地仓库

$ git init

连接远程仓库GitHub

$ git remote add -f origin

我的操作:$ git remote add -f origin https://github.com/aliyun/alicloud-android-demo.git

然后控制台会显示一些updating...信息。注意,这里的url必须是.git结尾的。

开启sparse checkout 模式

$ git config core.sparsecheckout true

简单解释一下:

Git1.7.0以后加入了Sparse Checkout模式,这使得Check Out指定文件或者文件夹成为可能。

告诉Git哪些文件或者文件夹是你真正想Check Out的 (你可以将它们作为一个列表保存在 .git/info/sparse-checkout 文件中。)

例如:$ echo libs >> .git/info/sparse-checkout$ echo apps/register.go >> .git/info/sparse-checkout$ echo resource/css >> .git/info/sparse-checkout

我的操作:$ echo hotfix_android_demo >> .git/info/sparse-checkout还记得我开头说要下载阿里sophix的demo吗

最后一步,拉取想要的分支

$ git pull origin master

齐活!

以下在GitBash上完整的操作。方便对照

GitBash

你的本地路径下,可以看到,只有你想要的文件夹,其他乱七八糟的都没有

具体可参考Git的Sparse checkout文档: http://schacon.github.io/git/git-read-tree.html#_sparse_checkout

作者:月下溪明 链接:https://www.jianshu.com/p/74a0441ed9b7 来源:简书 简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有