git - 克隆私有 GitHub 存储库,作为 GitHub 应用程序进行身份验证
问题描述
我正在构建一个 CI 应用程序,它按计划或每次合并新代码时通过 Webhook 对 GitHub 存储库的内容进行一些工作。
我已经创建了一个 GitHub 应用程序并进行了所有设置,以便用户可以使用它登录、授予它访问他们的存储库的权限以及配置他们的 CI 作业。
我无法找到有关如何克隆完整 repo 内容的文档,如果它是私有的,则通过验证为连接我的 GitHub 应用程序的用户。我找到了有关为 repo 获取树的文档,但似乎我仍然必须通过 JSON 响应并分别下载每个文件,这感觉就像我自己重新实现 Git 克隆一样。
现在我只是git clone
从我的 CI 脚本中将命令作为子进程启动。只是想知道这里有什么解决方案。我应该使用 libgit2 吗?还是使用该树 API 并下载所有文件?
解决方案
回答这个问题可能有点晚了,GitHub 可以选择通过应用程序请求的访问令牌来克隆存储库。
git clone https://x-access-token:<token>@github.com/owner/repo.git
推荐阅读
- c# - 尝试在 .Net5 中发布时出现 Nuget 错误
- vue.js - URL Rewrite 被 Vue Router 重写
- matlab - Matlab 类型转换转移到 python 3.7
- jquery - 当在 jquery 中未选中复选框时,我试图从输入字段中删除 required
- azure - 如何为所有环境设置通用阶段管道?
- asp.net - 如何在 ASP.NET Core Web API 2.1 中添加 WCF 服务引用
- r - 一元运算符的无效参数 - R Shiny
- ios - 在 Highcharts 中加载图表时显示加载指示器
- c++ - 我如何清除数组
- node.js - 使用 mongodb、mongoose 和 nodejs 设置限制和偏移后获取集合总数