GitHub Api 下载 zip 或 tarball 链接

2024-02-03

这里有一个关于如何创建 zip/tarball 字符串的很好的链接

当我从 github 下载 zip 时,文件名末尾的十六进制字符串代表什么? https://stackoverflow.com/questions/6334040/when-i-download-a-zip-from-github-what-is-the-hex-string-at-the-end-of-the-file

但我正在查看 GitHub APIv3,我很好奇我是否遗漏了某些内容。

  1. 有没有办法通过 API 调用获取 zip/tarball 链接?

  2. 如果没有,有没有办法可以在不使用 git 二进制文件或库的情况下构建该字符串?意思是,我可以使用各种 API 调用来提取所需的数据并组装到我需要的 URL 吗?

我知道第二个问题对于 stackoverflow 来说有点不合理,这对我来说是一个有趣的项目,所以我更喜欢第二个问题,如果你只是把我推向正确的方向,而不是扔掉一个代码片段。或者只是告诉我是否可能。


You can wget您可以从 GitHub 存储库获取 tar 文件(archive https://stackoverflow.com/questions/4051803/git-archive-vs-cp):

wget --no-check-certificate https://github.com/User/repo/archive/master.tar.gz

# better, if the certificate authorities are present:
wget https://github.com/User/repo/archive/master.tar.gz

将从用户“User”的存储库“repo”中获取名为“master”的文件。

The 更新了 V3 API 网址 https://docs.github.com/en/free-pro-team@latest/rest/reference/repos#download-a-repository-archive-tar is:

https://api.github.com/repos/User/repo/:archive_format/:ref
#
# two possibilities for fomat:
https://api.github.com/repos/User/repo/tarball/master
https://api.github.com/repos/User/repo/zipball/master

# from github example:
$curl -L https://api.github.com/repos/octokit/octokit.rb/tarball > octokit.tar.gz

那么你可以tar xpvf master,获取完整档案。它将按照中描述的命名约定创建一个目录你提到的问题 https://stackoverflow.com/questions/6334040/when-i-download-a-zip-from-github-what-is-the-hex-string-at-the-end-of-the-file.

无需 Git 二进制文件即可从 GitHub 获取存档,这要归功于它们下载服务“Nodeload” https://github.com/blog/678-meet-nodeload-the-new-download-server.


ligemer https://stackoverflow.com/users/2085469/ligemer建议的在编辑中 https://stackoverflow.com/review/suggested-edits/13466031下面的例子:

编辑 2016-08-25 - 使用 Wget、变量和解压的 Shell 示例:

#!/bin/bash -ex

# arguments:
# token = $1
# organization = $2
# repo name = $3
# branch = $4

wget --header="Authorization: token ${1}" --header="Accept:application/vnd.github.v3.raw" -O - https://api.github.com/repos/${2}/${3}/tarball/${4} | tar xz

通过以下方式致电:

$ scriptName.sh token my-organization site.example master

上面的命令将下载 GitHub 文件夹并将其解压到与脚本相同的目录。


迪奥戈·昆特拉 https://stackoverflow.com/users/4248833/diogo-quintela建议在评论中 https://stackoverflow.com/questions/8377081/github-api-download-zip-or-tarball-link/8378458#comment67958619_8378458:

以下示例允许下载、解压并剪切顶级目录

curl -L https://api.github.com/repos/octokit/octokit.rb/tarball | tar xz --strip=1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

GitHub Api 下载 zip 或 tarball 链接 的相关文章

  • 无法在 git 上获取 Http 工作

    我在拇指驱动器上使用 gitbash 作为 git 我的防火墙阻止了我 并且想设置我的 git 以进行 http 访问 我使用 github 并且已经看到了有关如何执行此操作的各种信息 但我还不够了解 无法让它为我自己工作 我在 php i
  • 以编程方式将工作项关联到拉取请求

    我可以得到 https www visualstudio com en us docs integrate api git pull requests get a pull request https www visualstudio co
  • Git 只获取一个目录

    我有一名开发人员负责一个文件夹 另一名开发人员负责另一个文件夹 我想使用特定文件夹更新产品 我正在寻找类似的命令 cd myproject git pull myfolder 并期望只有 myfolder 会被更新 是否可以 好吧 我重新表
  • 自给定提交以来 git 中的作者列表

    我想要一种列出所有 git 作者的方法 仅自给定提交以来 是独特的 这两个很简单 我在网上看到过一些解决方案 大多数使用git log format 但我看到的都不符合附加要求 按提交日期排序 因此 如果约翰 史密斯 John Smith
  • 撤消多个文件和文件夹“git add”[重复]

    这个问题在这里已经有答案了 我执行了 git add 现在我想恢复 git add 我怎样才能做到这一点 git reset 这相当于git reset HEAD 将取消 add 更常见的是 取消暂存 所有文件 In Git revert用
  • 防止在 Git 中签出

    我目前正在研究使用 Git 管理 OpenInsight 应用程序的源代码 由于 OI 代码存储在数据库表中 因此需要进行一定量的手动工作才能将源代码导出为文本 反之亦然 到目前为止 我已经成功地使用 Git 挂钩自动化了很多这项工作 但是
  • 在 emacs 的文件中不断出现的这些 ^M 是什么?

    我认为这可能与 TextMate 有关 但我们在一个小团队中工作 并且在 git 中几乎相同的文件的全文件冲突方面遇到了一些问题 在一个分支中 文件的每一行都附加了 M 这是什么神秘的事 M角色应该做什么 它从哪里来 我们的开发人员在 Wi
  • 如何将 tfvc 迁移到 Git(包括历史记录)

    我们计划从 tfvc 迁移到 Git 版本控制 我们有一些 GB 的代码和数千个变更集 我阅读了一些文章并浏览了 Microsoft 文档 发现了 2 个选项 提示迁移 我可以在其中使用 Azure Devops 内置工具 导入存储库 它有
  • Visual Studio 2017/2019/2022 gitsync/pull/push/fetch 操作卡住,并且无法停止

    我从 Visual Studio 中的 Git Changes 选项卡启动同步 获取 拉取或推送 但操作只是挂起 没有选项可以停止它 我必须点击 X 才能关闭 Visual Studio 如果操作是同步的 它会在其他所有操作上打开一个模式对
  • 我是否需要在裸仓库上运行 git gc ?

    man git gc http www kernel org pub software scm git docs git gc html其中没有明显的答案 而且我在谷歌上也没有任何运气 尽管我可能只是使用了错误的搜索词 我明白你应该偶尔跑步
  • 为什么 --first-parent 不是 git show 的默认值?

    我确信这个问题将作为基于意见的问题而结束 但没有其他地方所以问它 所以这里 我正在尝试查看我的分支的历史记录 其中包括合并提交 特别是更改的内容 我在这里找到了一篇非常有用的帖子git 显示合并提交 https stackoverflow
  • git 可以忽略特定行吗?

    我在手机的本机浏览器上测试时使用 git 同步到phonegap 因此我有以下行 var isPhoneGap false 显然 我在构建时更改了这一点 但是有什么方法可以设置 git 来忽略这一行 或者我是否必须将其放入自己的文件中并以这
  • 如何在“git-pull”自动合并后更改提交消息?

    有时 当结果生成自动合并时 我的协作者会 惊慌 git pull 然后接受默认的提交消息 在推送此提交之前 我想确保该消息得到修复 但是 amend似乎不起作用 修复这种情况下生成的消息的最佳方法是什么 我能为他们提供的最佳指示是 git
  • 使用 reposurgeon 将 svn repo 转换为 git

    我正在尝试使用 svn repo 转换为 git再生外科医生 http www catb org esr reposurgeon 这是我所做的 有一个具有 svn 名称 gt git 名称映射的 repo map 文件 svnadmin d
  • 如何使用 github 托管外部 CSS 文件?

    我将 css 上传到 github 然后转到网站上的文件并单击 raw 选项 我尝试将其添加到网页中 但 chrome 给出以下错误 资源解释为样式表 但使用 MIME 类型 text plain 进行传输 https raw github
  • Unity 2019 - 如何修复 TextMeshPro 2.0 错误 cs0433

    我刚刚开始包含 Vuforia SDK 的新项目 进行一些更改后 我决定从 Asset Store 安装 GitHub 扩展以进行一些备份 之后我的 textMeshPro 插件变得疯狂 抛出了一个我无法处理的恼人错误 错误说 Librar
  • 我的终端中的彩色、并排、内联 git diff 输出

    请注意 此问题不是该问题的重复问题 而是该问题的后续问题 当我执行 git diff 时 如何获得并排差异 https stackoverflow com questions 7669963 how can i get a side by
  • Git在Windows中的克隆比在Linux中慢得多

    我一直在追寻 Windows 上 github 克隆速度极慢的问题 Linux kali 没有这个问题 我的下行连接速度为 100 40 megabit s 我可以获得接近 8mb s 的下载速度 没有问题 我已将电脑直接插入互联网插座 无
  • Gitlab-runner 更改 builds_dir

    我在生产服务器上的默认 builds dir 是 root builds qL8eZYTH 0 faramarzqoshchi testing gitlab runner 我希望它是这样的 home domain name public h
  • 在 Git 中查看已删除的文件

    我已使用 Git 删除了一个文件 然后又提交了 因此该文件不再位于我的工作副本中 我想查看该文件的内容 但不想真正恢复它 我怎样才能做到这一点 git show HEAD path to file 您可以使用显式提交标识符或HEAD n查看

随机推荐

  • 页面重新加载后显示附加图像

    我正在将图像附加到页面中 还有一个复选框可以查看附加项目和隐藏附加项目 我将数据保存在 JSON 数组中 即使在重新加载选项卡后 我也想显示这些附加图像 当您通过 JavaScript 对 DOM 进行动态更改时 它们不是持久的 如果你想做
  • 使 Azure DocumentDB 不返回服务字段

    我在节点应用程序中为 Azure DocumentDB 使用类似 SQL 的语法 这是方法代码 client queryDocuments collection self SELECT FROM root toArray function
  • 在数据库中存储不同图像的最佳方式是什么?

    为不同目的存储图像的最佳方法 关于数据库设计 是什么 我有一堆用户照片 还有另外 5 组不同的照片 类似于用户照片 但与用户照片没有联系 最好是将所有照片存储在一个数据库表中并尝试从该表中引用它们 还是最好为每组照片创建不同的表 我可以看到
  • masm 错误 A2075:跳转目的地太远:30 个字节

    我的女士给我布置了一个作业 其中我必须编写一个程序 该程序将通过键盘获取输入并检查嵌套括号的常规顺序 例如 input output 正确的格式 input output 不正确 我的程序 model small stack 100h 38
  • Spring AutoPopulateList 最大大小?

    我对 Spring 自动填充列表有疑问 我的用例如下 管理可以访问应用程序的用户列表 在 GUI 方面 我使用自动完成字段来搜索用户并将用户添加到右侧的表中 用户也可以从表中删除 当 GUI 用户提交时 GUI 会动态构建一个包含用户字段的
  • 读取文本文件的行并收到 Charmap 解码错误

    我使用 python3 3 和 sqlite3 数据库 我有一个大约 270mb 的大文本文件 我可以在 Windows7 中使用写字板打开它 该文件中的每一行如下所示 术语 t编号 n 我想读取每一行并将值保存在数据库中 我的代码如下所示
  • java.lang.ClassNotFoundException: org.apache.jsp.index_jsp

    我有一个旧的 struts 1 应用程序 一直使用 Ant 构建 我正在将其转换为使用 Maven 我的应用程序的结构是模块化的 在包含模块中进行依赖管理 包含模块的 dep mgmt 部分包含
  • 在 switch-case 中创建一个对象

    我使用 Visual Studio 2008 C 在我的开关案例中 a 想要创建一个对象 但我不工作 我无法在开关盒中创建对象 对吗 如果这是正确的 解决这个问题的最佳方法是什么 创建该对象的新方法 编辑代码 switch causwahl
  • Laravel 在身份验证后重定向到登录

    PROBLEM 我正忙于我的第一个 Laravel 应用程序 尽管我看到了这种编写方式的好处 但我很难理解其中的一些行为 当我尝试登录时 我被重定向到登录页面 看起来用户身份验证正确 但无论如何它都会重定向到登录页面 我拥有的 我的用户表如
  • 在 python 中迭代和更新列表[重复]

    这个问题在这里已经有答案了 我无法理解为什么下面的代码会无限期地出现 循环 当我不使用复制列表时 list Mohit kumar sffsfshfsd for w in list if len w gt 5 list insert 0 w
  • 在 JPA 上选择 DISTINCT

    我有一张桌子ISO 4217 值 https en wikipedia org wiki ISO 4217货币 有 6 行 ID 国家 地区 货币名称 字母代码 数字代码 次要单位 我需要获取一些数据4种最常用的货币 https en wi
  • 错误 C2143:语法错误:缺少 ';'在“输入”之前

    我是 C 编程新手 请告诉我这个程序有什么问题 以及为什么我收到此错误 错误 C2143 语法错误 缺少 在 输入 之前 extern void func int main int argc char argv func int i 1 f
  • cf run-task 运行前需要上传 env/script 吗?一种优雅的方式?

    我正在与 Cloud Foundry 合作 My need是在我的应用程序之外运行数据库迁移 以便我可以在需要时以某种方式 cf 命令 api 调用等 触发迁移 我被推荐使用cf run task 经过检查 我的理解是 cf run tas
  • 将 pandas 数据框中每个组的多个列的值折叠成一组的 pythonic 方法是什么?

    给定一个数据框 将列的每组值折叠为一组很简单 df groupby A B apply set 但是 如果您想在多个列上执行此操作并且结果位于数据框中 那么如何以Pythonic方式执行此操作呢 例如对于以下数据框 import panda
  • VS code中Monokai Pro主题的大写颜色问题

    在Monokai Pro颜色主题中 我的一些以大写开头的参数显示为紫色 例如 DP piping 如下所示 有什么方法可以将其恢复为白色 就像我的其他参数一样 我尝试切换到另一个主题 但其他主题对我来说不舒服或有相同的问题 任何变量之前有超
  • -[UITableViewDelegate willDisplayCell:forRowAtIndexPath:] 是什么?

    在我所有的UITableView编程时 我总是配置我的UITableViewCells in UITableViewDataSource tableView cellForRowAtIndexPath 现在我遇到了 UITableViewD
  • 使用 Jest 和 Enzyme 测试 FaC 时未找到 React Node 节点

    我正在 React Native 中构建一个应用程序 我们最近开始在应用程序中使用 TypeScript 我的任务是迁移单元测试 有一项测试奇迹般地失败了 该应用程序有一个
  • 如何在单个 openshift yaml 模板中拥有多种对象类型?

    以下是名称为 Claim1 的单个 PersistentVolumeClaim 的示例模板 apiVersion v1 kind PersistentVolumeClaim metadata name claim1 spec accessM
  • 如何设置队列以使所有订阅者都能收到消息 - Rabbitmq

    我正在阅读 RabbitMQ in Action 一书 仍在第 2 章中 但作者说的一件事让我感到困惑 您设置一个交换并发送一条消息 两个订阅者正在监听队列 当第一条消息到达时 第一个订阅者会收到它 并且一旦确认该消息就会被删除 当下一个消
  • GitHub Api 下载 zip 或 tarball 链接

    这里有一个关于如何创建 zip tarball 字符串的很好的链接 当我从 github 下载 zip 时 文件名末尾的十六进制字符串代表什么 https stackoverflow com questions 6334040 when i