如何从Git存储库下载单个目录

时间:2015-04-13 23:57:10

标签: git github

从Git存储库下载单个子目录的最短,最简单的方法(最好是一行命令)是什么?目标是让最终用户(即不是程序员)尽可能轻松地获取子目录的副本。


这与" How do I clone a subdirectory only of a Git repository?"的克隆相关,因为该问题与克隆目录并且仍能够在Git中使用目录有关。虽然我只是希望用户获得本地副本,但git历史记录和其他信息不需要在我的情况下下载。如果它是好的,它只是不需要。

2 个答案:

答案 0 :(得分:0)

请注意,git本质上与下载无关。除了git daemon之外,git repo就位于您的磁盘上,这不会帮助您向普通用户提供下载。

据我所知,没有 easy 方式来做你想做的事。 github特别支持各种下载平面文件的方法,但我不认为它提供了一个打包目录的URL;它所能做的只是'释放'tarballs。子目录特别成问题:您需要一个响应ZIP或tar文件的Web服务,并且用户必须与浏览器进行交互才能将其解压缩。

我确实发现a PHP solution你可以在一个恰好从git repo填充的文件系统上面。

答案 1 :(得分:0)

如果子目录是子模块,则相对容易;只是git clone那个。但你仍然得到整个回购,而不是工作树。如果你想只是工作树 git 就没有什么可以为你做的。

所以你必须以不同的方式做事。如果它在你控制的机器上,你可以通过例如访问有问题的目录;

  • RCP
  • rsync的
  • ftp(作为zip或tar文件)