我想注册一些不错的服务(例如 codeclimate.com、david-dm.org),但链接到我的 github 帐户需要获得访问我的公共存储库(当然,毕竟它们是公共的)和私人存储库(呵呵,没办法)的权限。
我没有看到可以指定我只想授予对我的公共存储库的访问权限的地方。我遗漏了什么?
答案1
显然,这些服务理想情况下应该让你选择要授予他们访问哪些存储库的权限。也就是说,当你进入 GitHub 授权页面时,你应该在 URL 中找到类似这样的部分:
scope=user%3Aemail%2Crepo
(如果是codeclimate.com
)scope=repo,user:email
(如果是david-dm.org
)
现在,在位置栏中,编辑 URL,将其更改repo
为public_repo
。(以下是GitHub 范围,如果您有兴趣的话。)然后按Enter,您应该会看到 GitHub 授权页面,仅请求访问公共存储库,因此您现在可以单击按钮Authorize application
。
请记住,您不能总是以这种方式任意选择授予应用程序的范围,因为应用程序可能不是为处理您的更改而设计的。在这种情况下,它之所以有效,是因为这些特定的应用程序并不是以这样的方式编写的:它们验证授予它们的范围是否真正匹配它们请求的范围,而限制对公共存储库的访问只会向它们提供不同的(但仍然有效的)存储库数据视图。