我正在尝试在GitHub上收集有关我们项目存储库的一些统计信息。我能够获得每个贡献者的提交总数,但它是默认分支。
curl https://api.github.com/repos/cms-sw/cmssw/stats/contributors
问题是,如何为非默认分支获取相同的信息,我可以在其中指定分支名称。是否可以使用GitHub API进行此类操作?
感谢。
答案 0 :(得分:0)
您应该可以使用GitHub's 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
}
}
}
}
}
}
}
}
}
}
}
使用这些变量:
{
"owner": "rails",
"name": "rails"
}
这将列出给定存储库中每个分支的每个提交的每个作者电子邮件。您需要对数据进行分页(在cursor: "b7aa251234357f7ddddccabcbce332af39dd95f6"
参数后添加first:30
之类的内容)。你还必须汇总你的结果。
希望这有帮助。