我有一个二进制文件在我需要的回购。如何下载GitHub发行版的二进制文件?
我可以
git checkout tags/thetagoftherelease
这似乎结帐正确的标签,但不会拉下二进制文件。我如何下拉添加到发行版中的二进制文件(发行版上的绿色框)?
在发布中添加了二进制文件的图片。
我有一个二进制文件在我需要的回购。如何下载GitHub发行版的二进制文件?
我可以
git checkout tags/thetagoftherelease
这似乎结帐正确的标签,但不会拉下二进制文件。我如何下拉添加到发行版中的二进制文件(发行版上的绿色框)?
在发布中添加了二进制文件的图片。
我试了几天试图找到正确的答案,最后我想通过curl命令如何做到这一点。这是一个3步过程。
首先,以获得资产的列表的最新版本:
curl -H "Authorization: token YOURGITHUBTOKEN" https://api.github.com/repos/NAME/REPO/releases/latest
然后在JSON,查找你想要的资产的URL。例如,它看起来像: “url”:“https://api.github.com/repos/NAME/REPO/releases/assets/1275759”
然后,您将此传递给另一个curl命令以检索实际的URL,它实际上是指向Amazon S3文件的链接。
curl -H "Authorization: token YOURGITHUBTOKEN" -H "Accept:application/octet-stream" -i https://api.github.com/repos/NAME/REPO/releases/assets/1275759
的URL会在HTTP响应的“位置”字段,然后使用curl得到这样的文件:
curl "https://github-cloud.s3.amazonaws.com...." -i -o FILENAME
最好的答案,谢谢。请使用http://httpie.org(CLI HTTP客户端,用户友好的卷曲替换,直观的用户界面,JSON支持,语法突出显示,类似wget的下载,扩展等) – frekele 2016-07-10 17:41:09
Make确保使用引号围绕s3 url。否则卷曲不会得到它适当。 – 2018-02-22 12:00:02
二进制发行资产的Git之外存在,并且无法使用标准工具进行管理。
虽然它们应该可以通过GitHub的API获得。
List the repository's release assets:
GET /repos/:owner/:repo/releases/:id/assets
这将发回一个JSON文件,列出了发布资产的库,例如
[
{
"url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1",
"browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip",
"id": 1,
"name": "example.zip",
"label": "short description",
"state": "uploaded",
"content_type": "application/zip",
"size": 1024,
"download_count": 42,
"created_at": "2013-02-27T19:35:32Z",
"updated_at": "2013-02-27T19:35:32Z",
"uploader": {
"login": "octocat",
...
}
}
]
Retrieve the assts from the release you want,由其id
从上面的定义:
GET /repos/:owner/:repo/releases/assets/:id
如果你要下载的资产的二进制内容时,传递的
"application/octet-stream"
媒体类型。该API将重定向客户端到该位置,或者如果可能,直接进行流式传输。 API客户端应该同时处理200
或302
响应。
由于documented,这些请求都是相对于https://api.github.com
。
唐氏票没有意见也没有什么帮助 – 2014-09-18 23:24:20
*上拉*或*结帐*?这些在Git中是两个非常不同的术语。另外,什么“绿色盒子”? – Jubobs 2014-09-18 23:26:22
对不起,正在使用拉口语。像绿箱子一样,将二进制文件添加到git上的发行版中。它们显示为绿色框,您可以在github上手动下载。我想从发行版中下载这些添加的二进制文件。检出release标签不会给我二进制文件。 – 2014-09-18 23:30:00