从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?
当前回答
现在,这在GitHub中可以用于任何文件。您需要翻译raw.github.com的文件。例如,如果您的文件位于存储库中:
https://github.com/<username>/<repo>/some_directory/file.rb
使用wget,您可以从以下位置获取原始文件:
https://raw.github.com/<username>/<repo>/<branch>/some_directory/file.rb
Rails Composer就是一个很好的例子。
其他回答
Git不支持下载部分存储库。你必须下载所有这些。但你应该能够使用GitHub完成这项工作。
当您查看文件时,它有一个指向“原始”版本的链接。URL的构造如下
https://raw.githubusercontent.com/user/repository/branch/filename
通过填写URL中的空白,您可以使用Wget或cURL(带有-L选项,请参见下文)或任何方式下载单个文件。同样,这样做不会得到Git使用的任何好的版本控制功能。
更新:我注意到你提到这不适用于二进制文件。您可能不应该在Git存储库中使用二进制文件,但GitHub为每个存储库提供了一个下载部分,您可以使用它来上传文件。如果需要多个二进制文件,可以使用.zip文件。下载上载文件的URL为:
https://github.com/downloads/user/repository/filename
请注意,上面从github.com上的链接中给出的URL将重定向到raw.githubusercontent.com。您不应该直接使用此HTTP 302重定向所提供的URL,因为根据RFC 2616:“由于重定向有时可能会更改,因此客户端应继续使用请求URI进行未来请求。”
转到脚本并单击“原始”
然后复制链接并使用aria2c链接下载。
例如:aria2chttps://raw.githubusercontent.com/kodamail/gscript/master/color.gsf
窍门:我想下载的文件是,https://github.com/kodamail/gscript*/blob*/master/color.gsf
只需将链接修改为https://raw.githubusercontent.com/kodamail/gscript/master/color.gsf
删除斜体文本并添加相同格式的粗体文本,这将为您提供正确的链接。
可以与aria2c、wget或curl一起使用,我在这里使用了aria2c。
若您使用npm,只需运行以下命令行,最后,除了这个github文件,它不会下载任何npm包
npx config-pack https://github.com/facebook/react/blob/main/README.md
有关详细信息,请参阅配置包
只需将wget与raw=True参数一起使用
wget "https://github.com/user/repository/blob/master/directory/file_name?raw=True" -O target_path/file_name
可以这样使用curl:
卷曲-OLhttps://raw.githubusercontent.com/<username>/<repo名称>/<branch名称>/path/to/file
O表示curl下载内容L表示卷曲遵循重定向