如何通过命令行界面邀请用户访问私有GitHub repo?

如何通过命令行界面邀请用户访问私有GitHub repo?,github,Github,通常,在访问web浏览器中的“/settings/access”后,必须单击链接“邀请团队或人员”。 但是,我希望通过一个命令行界面来实现这一点,因为我必须邀请 很多人。可能吗 您可以使用GitHub API 见: 权限级别为以下之一: 拉取-可以拉取,但不能推送到或管理此存储库 推送-可以拉送,但不能管理此存储库 管理员-可以拉、推和管理此存储库 维护-推荐给需要在不访问敏感或破坏性操作的情况下管理存储库的项目经理 分类-推荐给那些需要主动管理问题和在没有写访问权限的情况下提取请求的参与

通常,在访问web浏览器中的“/settings/access”后,必须单击链接“邀请团队或人员”。 但是,我希望通过一个命令行界面来实现这一点,因为我必须邀请
很多人。可能吗

您可以使用GitHub API

见:

权限级别为以下之一:

  • 拉取
    -可以拉取,但不能推送到或管理此存储库
  • 推送
    -可以拉送,但不能管理此存储库
  • 管理员
    -可以拉、推和管理此存储库
  • 维护
    -推荐给需要在不访问敏感或破坏性操作的情况下管理存储库的项目经理
  • 分类
    -推荐给那些需要主动管理问题和在没有写访问权限的情况下提取请求的参与者
(默认为“推送”)

2020年9月更新,考虑到这一点,它可能是一个很好的功能添加(一种
gh repo
invite

同时,您可以使用进行类似的API调用,自动验证,并使用
-f
添加
POST
字段

gh api repos/YOUR_USER_NAME/YOUR_REPO/collaborators/COLLABORATOR_USER_NAME" -f '{"permission":"admin"}'
另一种方法是使用:

1-检查在您的回购中具有权限的所有用户:

hub api --flat 'repos/YOUR_USER_OR_ORGANIZATION_NAME/YOUR_REPO/collaborators' | grep -E 'login|permissions'
2-授予用户权限:

hub api 'repos/YOUR_USER_OR_ORGANIZATION_NAME/YOUR_REPO/collaborators/COLLABORATOR_USER_NAME' -H X:PUT -H d:'{"permission":"admin"}'

非常感谢!我想不出这个选项@用户15181没问题。别忘了阅读@user15181我添加了GItHub CLI
gh api
备选方案,因为旧的CLI
hub
现在已经过时。我正在尝试做非常类似的smth,但是在一个组织内,因此,我修改了端点,但当我尝试使用命令
gh api orgs/YOUR_ORG/repos/YOUR_user_NAME/YOUR_REPO/collaborators/collaborators_user_NAME
检查一个用户是否被列为合作者时,它总是返回404,我做错了什么吗?@greghor在这种情况下,没有。我想请您发布一个单独的问题(使用您的OS、git和gh版本)以便更仔细地了解问题。
hub api --flat 'repos/YOUR_USER_OR_ORGANIZATION_NAME/YOUR_REPO/collaborators' | grep -E 'login|permissions'
hub api 'repos/YOUR_USER_OR_ORGANIZATION_NAME/YOUR_REPO/collaborators/COLLABORATOR_USER_NAME' -H X:PUT -H d:'{"permission":"admin"}'