GitHub|下载子目录/单个文件夹

by 穿卡芦苇 #Git手册 #GitHub

有时候只是需要 Git 仓库里某个子文件夹里的源代码文件,并不想克隆整个仓库(可能整个仓库比较大)。例如只想下载某个课程系列里第一课的源代码案例 ch01。

可以使用 SVN 来实现,

原理:

1,SVN 基于文件方式存储(而Git却是基于元数据方式分布式存储文件信息的) 2,GitHub 支持 SVN 客户端

方法步骤

1,本地电脑要有个 svn 客户端 linux 和 macOS 都自带 svn,直接在命令行终端里使用。 Windows 没有的话,可以装个 TortoiseSVN 或其它客户端。

2,准备下载地址

a)如果要下载的文件在仓库的 master 分支, 譬如地址是 https://github.com/UserName/ProjectName/tree/master/ch01, 将 /tree/master/ 换成 /trunk/, 即 https://github.com/UserName/ProjectName/trunk/ch01

b)如果不是 master 分支, 将 /tree/ 改为 /branches/, 譬如 https://github.com/UserName/ProjectName/tree/develop/ch01, 修改后 https://github.com/UserName/ProjectName/branches/develop/ch01

3,使用 svn checkout 命令下载

举例:svn checkout https://github.com/UserName/ProjectName/trunk/ch01

第一次使用的话, 可能会出现下面这个提示: R)eject, accept (t)emporarily or accept (p)ermanently? 输入 P

其它工具

  • DownGit Create GitHub Resource Download Link
  • GitZip make sub-folder/sub-directory of github repository as zip and download  

参考 https://www.zhihu.com/question/25369412 https://stackoverflow.com/questions/7106012/download-a-single-folder-or-directory-from-a-github-repo


(正文结束。芝士就是力量!