列出组织的所有 GitHub 企业版存储库。

3

我有一个私人的 github 企业版 https://my.company.url/my_sub_org,大约有250个仓库。

我想列出这些仓库。

我尝试了以下命令:

$ curl -sX GET -H "Authorization: token ${mytoken}" https://my.company.url/api/v3/orgs/my_sub_org/repos?per_page=200| grep ssh_url | awk -F': ' '{print $2}'

但它只返回100个匹配项,符合此处文档中的说明 https://docs.github.com/en/rest/reference/repos#list-organization-repositories

我还尝试了以下命令:

gh repo list

但它只返回我拥有的内容。

以及

gh repo my.company.url/my_sub_org

没有结果。

如何列出所有的仓库?

2个回答

3
最近我发现了一种方法,在问题中列出特定所有者的GitHub Enterprise存储库的解决方案。
$ export GH_HOST=github.company.com
$ gh repo list <org/owner>

Showing 42 of 1337 repositories in @org/owner
[...]

1
我还不能发表评论,但文档中提到per_page表示“每页结果数(最大100)”,而page表示“要获取的结果页码”,因此可能需要循环遍历不同的页面?
编辑1:Github有一份关于分页遍历的指南。

你能分享一下修改后的查询是什么样子吗? 我尝试了curl -sX GET -H "Authorization: token ${mytoken}" https://my.company.url/api/v3/orgs/my_sub_org/repos?per_page=200?page=2| grep ssh_url | awk -F': ' '{print $2}',但没有返回任何结果。 - undefined
1
我其实不太确定,但也许可以用&代替?,这样就会变成: curl -sX GET -H "Authorization: token ${mytoken}" https://my.company.url/api/v3/orgs/my_sub_org/repos&per_page=200&page=2| grep ssh_url | awk -F': ' '{print $2}' - undefined
我刚刚在Github的指南中添加了一个关于分页遍历的链接。 - undefined
那是正确答案吗?我也很好奇。 - undefined
很不幸,它没有起作用 :( 我找到后会更新的。 - undefined

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