如何使用命令行在Github上添加协作者?

4
我想了解如何使用命令行将协作者添加到GitHub的私有repo中。我使用的是Mac(10.6.8)或Ubuntu 11.04操作系统。
3个回答

10

Github gemhub是两个流行的GitHub命令行界面工具,但它们都不能提供添加协作者到存储库的功能。这意味着从命令行添加协作者的唯一方法是使用curl并直接访问GitHub API ( GitHub API 允许添加/删除/列出协作者)。

以下是我如何将协作者添加到自己的存储库,以及GitHub响应我的操作的示例(响应并不是很有用-但成功后您会得到这个响应):

> curl -i -u "my_user_name:my_password" -X PUT -d '' 'https://api.github.com/repos/my_gh_userid/my_repo/collaborators/my_collaborator_id'

HTTP/1.1 204 No Content
Server: nginx
Date: Sun, 25 Nov 2012 06:45:10 GMT
Connection: keep-alive
Status: 204 No Content
X-RateLimit-Limit: 5000
X-GitHub-Media-Type: github.beta
X-RateLimit-Remaining: 4999
X-Content-Type-Options: nosniff
Cache-Control: 
相关的添加合作者API页面在这里,而这个页面解释了如何使用curl从命令行一般性地使用GitHub API。希望这可以帮到你。
顺便说一下,当我正在寻找如何做你现在要求的事情时,我找不到一个令人满意的答案(除了使用curl…)。我计划问“hub”的维护者看看为什么他没有将该功能添加到工具中。

我使用了这种方法将多个已存在的GitHub账户添加到我的多个私有仓库中,惊讶地发现这些账户被直接添加,绕过了邀请流程。新的合作者只收到了一封邮件,说明他们现在正在关注其他仓库。 - Codex24

2

2
根据此文档,您可以使用Github CLI添加协作者。
gh api \
  --method PUT \
  -H "Accept: application/vnd.github+json" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  /repos/OWNER/REPO/collaborators/USERNAME \
  -f permission='triage' 

然后您可以编写一个脚本,以一次性向多个合作者或多个仓库添加合作者(我认为 Github Web UI 不支持此功能)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接