我正在尝试使用GitHub的v4 GraphQL查询关于存储库的信息。其中一个我想查询的内容是存储库中使用的所有语言的分布情况,或者如果可能的话,用户所有存储库中语言的分布情况。我尝试了以下代码片段,但它返回null,而主要语言则返回主要语言。
languages: {
edges: {
node: {
name
}
}
}
我找到的与语言相关的唯一信息是主要语言。但我想显示一个用户在单个存储库或跨其所有存储库中使用的所有语言的统计数据。
我正在尝试使用GitHub的v4 GraphQL查询关于存储库的信息。其中一个我想查询的内容是存储库中使用的所有语言的分布情况,或者如果可能的话,用户所有存储库中语言的分布情况。我尝试了以下代码片段,但它返回null,而主要语言则返回主要语言。
languages: {
edges: {
node: {
name
}
}
}
我找到的与语言相关的唯一信息是主要语言。但我想显示一个用户在单个存储库或跨其所有存储库中使用的所有语言的统计数据。
first: 100
以获取存储库的前100种语言:{
user(login: "torvalds") {
repositories(first: 100) {
nodes {
primaryLanguage {
name
}
languages(first: 100) {
nodes {
name
}
}
}
}
}
}
如果你想要按语言统计数据(例如,你想知道哪些是第二、第三种语言等),很抱歉目前 GraphQL API 不支持这个功能,但可以使用“列出语言API”,例如:https://api.github.com/repos/torvalds/linux/languages
totalSize
与其每种语言的size
进行比较。{
repository(name: "pytorch", owner: "pytorch") {
languages(first: 100) {
totalSize
edges {
size
node {
name
id
}
}
}
}
}
{
"data": {
"repository": {
"languages": {
"totalSize": 78666590,
"edges": [
{
"size": 826272,
"node": {
"name": "CMake",
"id": "MDg6TGFuZ3VhZ2U0NDA="
}
},
{
"size": 29256797,
"node": {
"name": "Python",
"id": "MDg6TGFuZ3VhZ2UxNDU="
}
}, ...
size
/ totalSize
* 100。