从GitHub repo下载单个文件有哪些技巧?
我不想要显示原始文件的URL;对于二进制文件,什么都没有。
http://support.github.com/discussions/feature-requests/41-download-single-file
是否有可能将GitHub用作“下载服务器”?
如果我们决定切换到GoogleCode,是否提供了上述功能?
或者开源项目是否有免费托管和VCS?
从GitHub repo下载单个文件有哪些技巧?
我不想要显示原始文件的URL;对于二进制文件,什么都没有。
http://support.github.com/discussions/feature-requests/41-download-single-file
是否有可能将GitHub用作“下载服务器”?
如果我们决定切换到GoogleCode,是否提供了上述功能?
或者开源项目是否有免费托管和VCS?
当前回答
您可以使用V3API获取如下原始文件(需要OAuth令牌):
curl -H 'Authorization: token INSERTACCESSTOKENHERE' -H 'Accept:
application/vnd.github.v3.raw' -O -L
https://api.github.com/repos/*owner*/*repo*/contents/*path*
所有这些都必须在一条线上进行。-O选项将文件保存在当前目录中。可以使用-o filename指定其他文件名。
要获取OAuth令牌,请遵循以下说明。
我也把这个写下来作为要点。
其他回答
我最近发现了一个名为gitzip的服务,它也是开源的:
站点-http://kinolien.github.io/gitzip/
回购-https://github.com/KinoLien/gitzip
访问上述站点,输入repo或目录URL,您可以下载单个文件或整个目录作为zip文件。
要从Github repo下载文件,请使用带有原始文件链接的“curl”命令。
curl https://raw.githubusercontent.com/user/repo/filename --output filename
添加--output选项,后跟新文件名,将原始文件下载到新创建的文件中。
在Mac或Linux上安装jq并使用它从Github中提取文件,如下所示:
curl -H 'Authorization: token <ACCESS_TOKEN>' \
-H "Accept: application/vnd.github.v3+raw" -L \
https://api.github.com/repos/MY-ORG/MY-REPO/contents/MY-FILE-PATH | \
jq -r '.content' | base64 --decode > MY_FILE_NAME.txt
可以在此处找到上述命令的文档。
为了跟进thomasfuchs所说的,但对于GitHub Enterprise用户,您可以使用以下内容。
curl-H'授权:令牌INSERTACCESSTOKENHERE'-H'接受:application/vnd.github.v3.raw'-O-Lhttps://your_domain/api/v3/repos/owner/repo/contents/path
这里还有API文档https://developer.github.com/v3/repos/contents
根据这一要点,您可以使用wget或cURL:
单击GitHub repo中的文件名。单击“原始”以显示文件目录在浏览器中复制URL。在命令行中,运行以下任一命令:wget—无检查证书—内容处置https://URL-from-step3/卷曲-LJOhttps://URL-from-step3/再一个:在RHEL7.6中,运行以下命令:wget公司https://URL-from-step3/--输出文档=FILE_NAME