如何从GitHub下载.zip进行特定的提交?

Cho*_*per 100 git github

我想下载一个.zip与github上托管的库的源,但我不想要主人,因为每次下载我都可以下载不同的版本.

这个特殊的库没有标签,所以我不能使用它.

那么如何为特定的提交sha下载source.zip呢?

Zek*_*eki 208

你可以把你想要的sha放在下载url中:

https://github.com/{username}/{projectname}/archive/{sha}.zip

作为一般规则,如果你有一个有效的网址,你可以用你想要的特定sha替换"master".

  • 它也以.tar.gz而不是.zip结尾 (8认同)
  • 没想到(酷)这样做的方式.期待git命令;) (5认同)
  • 即使我使用“wget -O”重命名存档 ZIP 文件,解压后我也会得到一个又大又难看的 SHA1 目录名。有什么办法可以避免这种情况吗? (2认同)

小智 39

查看提交代码时,单击右上角的"浏览代码"按钮,然后单击"下载ZIP".

  • 这在2017年2月对我有用.它确实在所选提交的时间戳下载了包含更改的repo. (2认同)

tro*_*foe 7

这是一个古老的问题,但是要提到的是,如果您只想将提交作为补丁而不是整个存储库提交,则可以使用:

$ wget http://github.com/username/repo/commit/sha1.patch
#                        ^^^^^^^^ ^^^^        ^^^^
#                        change   change      change
Run Code Online (Sandbox Code Playgroud)

/commit.patch部分作为重要的组成部分。

如果您要合并前一阵子撤消的更改,因此在分叉存储库中不存在,则此功能特别有用。