我试图在GitHub上收集有关我们项目存储库的一些统计信息.我能够获得每个贡献者的提交总数,但它是默认分支.
curl https://api.github.com/repos/cms-sw/cmssw/stats/contributors
问题是,如何为非默认分支获取相同的信息,我可以在其中指定分支名称.使用GitHub API可以进行任何此类操作吗?
谢谢.
您应该能够使用GitHub 的 GraphQL API来获取此数据,尽管它不会为您聚合。
在GraphQL Explorer中尝试以下查询:
query($owner:String!, $name:String!) {
repository(owner:$owner,name:$name) {
refs(first:30, refPrefix:"refs/heads/") {
edges {
cursor
node {
name
target {
... on Commit {
history(first:30) {
edges {
cursor
node {
author {
email
}
}
}
}
}
}
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
有了这些变量:
{
"owner": "rails",
"name": "rails"
}
Run Code Online (Sandbox Code Playgroud)
这将列出给定存储库中每个分支的每个提交的每个作者电子邮件。您可以对数据进行分页(在参数cursor: "b7aa251234357f7ddddccabcbce332af39dd95f6"后面添加类似内容first:30)。您还必须汇总您这边的计数。
希望这可以帮助。