我看到了一些奇怪的事情:

http://github.com/zoul/Finch.git

现在我不是CVS, SVN之类的家伙了。当我在浏览器中打开它时,它告诉我我做错了什么。所以我猜我需要一些黑客工具?一些客户吗?

(我的意思是…为什么不直接提供ZIP文件呢?难道世界还不够复杂吗?)


要通过这样的URL克隆存储库:是的,你确实需要一个客户端,而这个客户端就是Git。这可以让你做出改变,你自己的分支,与其他开发者同步合并,维护你自己的源代码,你可以轻松地保持更新,而不必每次都下载整个东西并重写你自己的更改等等。ZIP文件不会让您这样做。

它主要适用于那些想要开发源代码的人,而不是那些只想获得源代码而不进行更改的人。

但你也可以得到一个ZIP文件:

点击http://github.com/zoul/Finch/,然后点击绿色的克隆或下载按钮。在这里看到的:


如果存储库所有者没有准备zip文件,而您只想下载一个供自己使用,会发生什么?有一个答案,你不需要经历下载软件、安装和注册密钥等可怕的过程,在GitHub等!

要简单地以zip文件的形式下载存储库:在存储库URL的末尾添加额外的路径'/zipball/master/',瞧,它会给你一个完整的zip文件。

例如,

http://github.com/zoul/Finch/

就变成:

http://github.com/zoul/Finch/zipball/master/

然后,它会提供一个zip文件供您下载。


通过curl下载压缩文件:

curl -L -o master.zip http://github.com/zoul/Finch/zipball/master/

如果你的存储库是私有的:

curl -u 'username' -L -o master.zip http://github.com/zoul/Finch/zipball/master/

来源:Github Help


2016年7月更新

截至2016年7月,下载ZIP按钮已经移动到克隆下或下载到代码选项卡下标题的最右侧:


如果你没有看到按钮:

确保您从右侧导航菜单中选择了<>代码选项卡,或者 回购可能没有一个zip准备。将/archive/master.zip添加到存储库URL的末尾,并生成主分支的zip文件:

http://github.com/user/repository/ - - - - - - - - - > http://github.com/user/repository/archive/master.zip

以zip文件形式获取主分支源代码。您可以对标记和分支名称做同样的事情,方法是用分支或标记的名称替换上面URL中的master。


这里有一个很好的参考,如果你想从命令行执行: http://linuxprograms.wordpress.com/2010/10/26/checkout-code-from-github/

基本上这是

git clone http://github.com/zoul/Finch.git

截至2016年12月,克隆或下载按钮仍然在<>代码选项卡下,但现在它是在标题的最右边:


有时如果“下载ZIP”按钮不可用,你可以点击“原始”,文件就会下载到你的系统中。


截至2016年6月,下载ZIP按钮仍然在<> Code选项卡下,但它现在在一个按钮内,有两个选项克隆或下载:

Symfony图像示例


我也被这个问题难住了。“下载”按钮在最右边,但你也需要在最上面的文件夹中才能下载你所看到的内容。走到尽可能高的父/根文件夹,然后寻找下载按钮。


我也面临着同样的问题,但我意外地解决了这个问题。 1)登录github 2)点击右上角的叉按钮。 3)以上步骤后,您可以在<>代码选项卡下以绿色看到克隆或下载。


尽管这是一个相当老的问题,但我有我的2美分要分享。

您也可以以tar.gz的形式下载该回购文件

就像这里各种答案指向的zipball链接一样,这里也有一个tarball链接,它以tar.gz格式下载git存储库的内容。

curl -L http://github.com/zoul/Finch/tarball/master/

更好的方法

Git还提供了一种不同的URL模式,你可以简单地在URL的末尾附加你想要下载的文件类型。如果您想在批处理或bash脚本中处理这些url,这种方式更好。

curl -L http://github.com/zoul/Finch/archive/master.zip

curl -L http://github.com/zoul/Finch/archive/master.tar.gz

下载特定的提交或分支

在上面的url中用commit-hash或branch-name替换master,如下所示。

curl -L http://github.com/zoul/Finch/archive/cfeb671ac55f6b1aba6ed28b9bc9b246e0e.zip    
curl -L http://github.com/zoul/Finch/archive/cfeb671ac55f6b1aba6ed28b9bc9b246e0e.tar.gz --output cfeb671ac55f6b1aba6ed28b9bc9b246e0e.tar.gz

curl -L http://github.com/zoul/Finch/archive/your-branch-name.zip
curl -L http://github.com/zoul/Finch/archive/your-branch-name.tar.gz --output your-branch-name.tar.gz

你也可以在Github上发布一个版本,并且有一个选项可以下载该版本的zip文件中的源代码。

然后,您可以将zip文件链接共享给任何人以下载项目源代码。


在chrome中,如果你将鼠标悬停在下载ZIP上,它会在浏览器底部为你提供链接


对于使用Windows并努力从终端下载zip格式的repo的人:

url -L http://github.com/GorvGoyl/Notion-Boost-browser-extension/archive/master.zip——output master.zip


最近,我在GitHub上找到了以下工具:GitHub -zip -downloader from repository marencozy/ GitHub -zip -downloader。 它可以将所有公共存储库备份为zip存档。

python3 github-zipball-downloader.py -username User1

它将User1存储库保存到名称为datetime的本地文件夹。