将repo下载为zip文件

时间:2016-08-01 12:00:30

标签: git curl github

我正在尝试以zip文件的形式下载私人GitHub回购。

我在尝试:

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 ......"。

2 个答案:

答案 0 :(得分:1)

这应该可以解决您的问题

curl -H "Authorization: token f19..." -Lk https://api.github.com/repos/Mylab/name/zipball/release -o release.zip 

编辑:您需要自定义:

  • Mylab:用户或组织
  • name:repository name
  • 发布:标记或分支目标

编辑2 :您需要拥有一个token来拥有整个" repo"选中此类别以授予您对私人存储库的完全访问权限

编辑3 :注意令牌和f19之间必须有只有一个空格...

答案 1 :(得分:0)

/archive/之后的名称必须是您要下载的分支的名称。

通常是master.zipfeature/my-feature.ziprelease/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 按钮中查看正确的网址。