Rad*_*mko 564 git version-control github
我猜大多数人,开发人员,使用任何VCS,我希望你们中的一些人使用Git.您是否有任何提示或技巧如何获取存储库中单个文件的下载URL?
我不想要显示原始文件的URL; 在二进制文件的情况下它是无用的.
http://support.github.com/discussions/feature-requests/41-download-single-file
甚至可以将GitHub用作"下载服务器"吗?
如果我们决定切换到Google代码,那么此处提供的功能是什么?
或者是否有开源项目的免费托管和VCS?
jon*_*scb 532
Git不支持下载存储库的部分内容.你必须下载所有这些.但你应该能够用GitHub做到这一点.
当您查看文件时,它具有指向"原始"版本的链接.该URL构造像这样
https://raw.githubusercontent.com/user/repository/branch/filename
Run Code Online (Sandbox Code Playgroud)
通过填写URL中的空白,您可以使用Wget或cURL(带有-L选项,见下文)或任何下载单个文件的内容.同样,你不会通过这样做获得Git使用的任何漂亮的版本控制功能.
更新:我注意到你提到这对二进制文件不起作用.您可能不应该在Git存储库中使用二进制文件,但GitHub有一个可用于上载文件的每个存储库的下载部分.如果需要多个二进制文件,可以使用.zip文件.下载上传文件的URL是:
https://github.com/downloads/user/repository/filename
Run Code Online (Sandbox Code Playgroud)
请注意,上面给出的URL github.com将从重定向链接到raw.githubusercontent.com.您不应该直接使用此HTTP 302重定向提供的URL,因为根据RFC 2616:"由于重定向有时可能会被更改,因此客户端应该继续使用Request-URI来处理将来的请求."
bea*_*end 504
Raw按钮.tho*_*chs 38
您可以使用V3 API来获取这样的原始文件(您需要一个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令牌,请按照以下说明操作:https: //help.github.com/articles/creating-an-access-token-for-command-line-use
我也把它写成了一个要点:https: //gist.github.com/madrobby/9476733
Cam*_*ong 15
GitHub Mate可轻松下载单个文件,只需点击图标即可下载,目前它只适用于Chrome.
Joe*_*Leo 14
现在可以在GitHub中找到任何文件.您需要翻译raw.github.com的文件.例如,如果您的文件位于您的存储库中:
https://github.com/<username>/<repo>/some_directory/file.rb
Run Code Online (Sandbox Code Playgroud)
使用wget,您可以从以下位置获取原始文件:
https://raw.github.com/<username>/<repo>/<branch>/some_directory/file.rb
Run Code Online (Sandbox Code Playgroud)
Rails Composer就是一个很好的例子.
Dar*_*eam 13
2021 年,GitHub 添加了直接在网络上打开 Visual Studio Code 的新功能。.当您在任何存储库中时,只需按句号(又名句点键)即可启动它。
因此,要下载任何特定文件,您可以通过按 键启动 vscode .,然后它将显示 vscode 中存储库的所有文件,您可以通过right click>下载您想要的任何文件dowload。
Mar*_*ark 12
你可以这样使用curl:
curl -OL https://raw.githubusercontent.com/<username>/<repo-name>/<branch-name>/path/to/file
O表示curl下载内容
L意味着curl遵循重定向
jab*_*tta 11
有多种方法可以处理此问题,具体取决于文件有多大、是否需要下载文件以外的文件夹,以及您是否计划手动或以编程方式执行此操作。
下面总结了六个选项。对于那些更喜欢动手解释的人,我整理了一个 YouTube 视频:从 GitHub 下载单个文件和文件夹。
另外,对于那些需要从 GitHub 下载单个文件夹/目录(而不是文件)的人,我在 StackOverflow 上发布了类似的答案。
1. GitHub 用户界面
2. 浏览器上下文菜单
3. 第三方工具
https://github.com/babel/babel-eslint/blob/master/lib/parse.js.4.颠覆
svn export https://github.com/babel/babel-eslint/trunk/lib/parse.js5. 卷曲
curl -o parse.js https://raw.githubusercontent.com/babel/babel-eslint/master/lib/parse.js.6. GitHub API
https://api.github.com/repos/:owner/:repo/contents/:path。替换占位符后,示例端点为:https://api.github.com/repos/babel/babel-eslint/contents/lib/parse.js。这为您提供了该文件的 JSON 数据,包括下载 URL(与我们在上面的 cURL 示例中使用的下载 URL 相同)。但是,此方法对于单个文件并不是那么有用(您更有可能使用它来下载特定文件夹,如我上面链接的答案中所述)。小智 10
跟进thomasfuchs的说法,但对于GitHub Enterprise用户来说,这是你可以使用的.
curl -H 'Authorization: token INSERTACCESSTOKENHERE' -H 'Accept: application/vnd.github.v3.raw' -O -L https://your_domain/api/v3/repos/owner/repo/contents/path
这里还有API文档https://developer.github.com/v3/repos/contents
小智 10
这对我有用,我希望对你也有用。
red*_*rot 10
wget -L (exact copied link)blob为步骤 2raw中的即可如果您想从github使用中下载zip文件wget
wget -O filename.zip https://github.com/downloads/user/repository/filename.zip?raw=true
Run Code Online (Sandbox Code Playgroud)
您应该使用 GitHub 的Releases功能将可下载数据(例如编译后的二进制文件)与用于生成该数据的源代码的标记版本相关联,而不是链接以下载存储库中的特定文件。
https://github.com/blog/1547-release-your-software
我们很高兴地宣布发布,这是一种将软件交付给最终用户的工作流程。发布是具有变更日志和二进制资产的一流对象,它们呈现了 Git 工件之外的完整项目历史。
发行版附有发行说明和下载软件或源代码的链接。
遵循许多 Git 项目的约定,发布与 Git 标签相关联。您可以使用现有标签,或者让发布在发布时创建标签。
此方法适用于Windows,因为我从未使用过MAC,所以我不知道MAC中用于替代密钥的替代密钥是什么,下面将要提到。
让我们谈谈CSV文件。如果要下载CSV文件,请执行以下操作:
请记住,您必须同时按Alt和左键单击。只需单击“原始”按钮,即可在浏览器中打开CSV。
希望对您有所帮助。
只需使用 wget 和 raw=True 参数
wget "https://github.com/user/repository/blob/master/directory/file_name?raw=True" -O target_path/file_name
Run Code Online (Sandbox Code Playgroud)
您只需要使用raw文件的URL即可。
例如,下载AFNetworking的自述文件:
curl https://raw.githubusercontent.com/AFNetworking/AFNetworking/master/README.md > ADREADME.md
Run Code Online (Sandbox Code Playgroud)
由于它是公共回购协议,因此您不需要任何凭据。请注意网址类型:raw.githubusercontent.com/path/to/file
| 归档时间: |
|
| 查看次数: |
799639 次 |
| 最近记录: |