【问题标题】:How to download source in ZIP format from GitHub?如何从 GitHub 下载 ZIP 格式的源代码?
【发布时间】:2010-05-01 19:06:51
【问题描述】:

我看到了一些奇怪的东西:

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

现在我不是 CVS、SVN 等老兄。当我在浏览器中打开它时,它告诉我我做错了什么。所以我敢打赌我需要一些黑客式的工具?某个客户?

(我的意思是……为什么不提供一个 ZIP 文件?世界还不够复杂吗?)

【问题讨论】:

    标签: git github


    【解决方案1】:

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

    要简单地将存储库下载为 zip 文件:将额外路径“/zipball/master/”添加到存储库 URL 的末尾,瞧,它会为您提供一个完整的 zip 文件。

    例如,

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

    变成:

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

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

    【讨论】:

    • 谢谢!我需要从没有 zip 文件的存储库中下载代码,这非常有效。我永远不会从 github 帮助中弄清楚我在做什么。
    • 我的朋友很棒的信息。有很多次我想下载不同的分支而不必安装 git。老实说,我不明白为什么没有这个链接......
    • 希望这行得通,但这里没有运气:github.com/facebook/php-webdriver --当我在该 URL 的末尾添加“zipball/master/”时,我只收到一条错误消息。我正在回应原始评论者......我只是不明白为什么下载我在 github 上看到的源代码如此困难。我不要一个 git 客户端,我不想学 git,我只想拉下我面前的文件 :-)
    • 很好的提示!添加 /zipball/master/ 时,请确保您位于存储库的顶部文件夹。
    【解决方案2】:

    像这样通过URL 克隆该存储库:是的,您确实需要一个客户端,而该客户端是Git。这将让您进行更改,您自己的分支,与其他开发人员同步合并,维护您自己的源代码,您可以轻松地保持最新状态,而无需每次都下载整个内容并重写您自己的更改等。ZIP 文件获胜不要让你那样做。

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

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

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

    【讨论】:

    • 有什么办法不用下载整个存储库吗?比如说,如果存储库是一个“插件”存储库,而您只想要一个插件?
    • 据我所知,并非没有使用Github API
    【解决方案3】:

    2016 年 7 月更新

    截至 2016 年 7 月下载 ZIP 按钮已移至 克隆或下载 下到 extreme-right 代码选项卡下的标题:


    如果你没有看到按钮:

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

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

    在 zip 文件中获取主分支源代码。您可以对标签和分支名称执行相同的操作,方法是将上面 URL 中的 master 替换为分支或标签的名称。

    【讨论】:

    • 另外,如果您想要一个 tarball 而不是 zip,您可以将该 URL 更改为在末尾显示“.tar.gz”。
    • 它看起来像 默认选择代码,但它不是。点击它!
    • 谢谢@SteveWash。这简直是​​疯了。我还认为代码选项卡已经被选中。这真是糟糕的用户界面(但是,好吧,一旦你学会了这个技巧,你就会永远知道它......)
    • 如果您将标签命名为 v1.0,则 zip 文件将忽略 v 并下载 repo-1.0。这是 github 的错误吗?
    【解决方案4】:

    通过curl 将您的存储库下载为 zip 文件:

    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

    【讨论】:

    • 甜蜜!工作就像一个魅力,我在没有浏览器的批处理系统中有权限限制,而这正是我所需要的!
    • 使用 wget 会更短:wget https://github.com/zoul/Finch/archive/master.zip
    【解决方案5】:

    截至 2016 年 12 月,克隆或下载 按钮仍在<> Code 标签下,但现在位于标题的最右侧:

    【讨论】:

    • 这也适用于旧版式吗?
    • 嘿,我没看到那个按钮! github.com/Antonioya/blender/tree/master/measureit
    • 可能是因为你还没有登录,我刚查了一下,github的布局稍微改了一下。但是该按钮现在是绿色的,并标记为“克隆或下载”(对于您的存储库,下载按钮链接到:github.com/Antonioya/blender/archive/master.zip
    • 我登录了,但仍然没有看到任何绿色按钮 - 而不是“克隆或下载”,而是“历史记录”
    • @Miryafa 因为该存储库已禁用下载。检查自述文件上的注释。它说,"*** NOTICE *** MeasureIt 现在是 Blender 官方版本的一部分,所以这个 Git 存储库仅供参考。如果您想下载最新版本或报告错误,请使用 Blender 网站。"
    【解决方案6】:

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

    您也可以将 repo 下载为 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
    

    下载特定的提交或分支

    将上述网址中的master 替换为commit-hashbranch-name,如下所示。

    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
    

    【讨论】:

    • 这正是我一直在寻找的——一个我可以使用命令行获取当前主分支的压缩包的 URL。但是,您需要将-o <file> 添加到您的命令中,否则您只会将二进制文件打印到标准输出。所以,在这个例子中:curl -L https://github.com/zoul/Finch/archive/master.tar.gz -o Finch-master.tar.gz(或者任何你想要的文件名)。我还添加了https: 以进行良好的衡量。
    【解决方案7】:

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

    基本上是这样的

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

    【讨论】:

    • 这不会以 zip 格式下载
    【解决方案8】:

    我也被这件事难住了。 “下载”按钮位于最右侧,但您还需要位于顶部文件夹中才能下载您所看到的内容。尽可能上到父/根文件夹,然后寻找下载按钮。

    【讨论】:

      【解决方案9】:

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

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

      【讨论】:

        【解决方案10】:

        有时如果“下载 ZIP”按钮不可用,您可以单击“原始”,文件应下载到您的系统。

        【讨论】:

        • 或者,正如本页其他地方所提到的,即使“代码”选项卡看起来被选中......它也可能不是。再次点击“代码”,看看是否出现“克隆或下载”按钮。
        【解决方案11】:

        截至 2016 年 6 月,下载 ZIP 按钮仍位于 代码选项卡下,但它现在位于一个按钮内,其中包含克隆或下载两个选项:

        Symfony image example

        【讨论】:

          【解决方案12】:

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

          【讨论】:

            【解决方案13】:

            您还可以在 Github 上发布版本,并且可以选择以 zip 文件的形式下载该版本的源代码。

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

            【讨论】:

              【解决方案14】:

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

              【讨论】:

                猜你喜欢
                • 2014-04-02
                • 2016-05-09
                • 1970-01-01
                • 2017-05-09
                • 1970-01-01
                • 2021-12-03
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多