我正在尝试将一个私有GitHub repo下载为zip文件。
我正在尝试:
curl -H "Authorization: token f19..." -L https://github.com/Mylab/name/archive/release.zip
它向我展示了:
{"error":"Not found"}
如果我尝试:
curl -H "Authorization: token f19..." -L -o release.zip https://github.com/Mylab/name/archive/release.zip
它下载了一个很小的zip文件,我无法打开它,因为它说"要么这个文件不是zip……"。
这应该可以解决问题
curl -H "Authorization: token f19..." -Lk https://api.github.com/repos/Mylab/name/zipball/release -o release.zip
编辑:您需要自定义:
- Mylab:用户或组织
- 名称:存储库名称
- 发布:以标记或分支为目标
编辑2:您需要有一个标记了整个"回购"类别的令牌,才能授予您对私有存储库的完全访问权限
编辑3:注意令牌和f19之间必须只有一个空间…
/archive/
之后的名称必须是要下载的分支的名称。
通常是master.zip
或feature/my-feature.zip
、release/my-release.zip
等。只有release.zip
听起来很可疑,因为release/
通常只是git中发布分支的前缀。
因此,正确的URL/命令是:
curl -H "Authorization: token f19..." -L https://github.com/Mylab/name/archive/master.zip
curl -H "Authorization: token f19..." -L https://github.com/Mylab/name/archive/feature/my-feature.zip
curl -H "Authorization: token f19..." -L https://github.com/Mylab/name/archive/release/august-release-001.zip
当您已经从列表中选择了正确的分支时,您可以在github右侧的按钮克隆或下载/下载ZIP中检查正确的URL。