Я пытаюсь преобразовать этот запрос в структуру:
{
repository(owner: "google", name: "gson") {
name
refs(first: 100, refPrefix: "refs/heads/") {
edges {
node {
name
target {
... on Commit {
id
history(first: 2) {
totalCount
edges {
node {
... on Commit {
committer {
date
email
name
}
}
}
}
}
}
}
}
}
}
}
}
Я получил это от github api: Как эффективно найти количество коммитов для хранилища?
Я проверил его на проводнике Github, чтобы убедиться, что он работает, как и должен. То, что я пытаюсь сделать, это получить "TotalCount" коммитов для каждого участника в конкретном c репозитории. Я не совсем уверен, как я должен делать это точно. Я уже получил это:
type repositoryInfo struct {
Repository struct {
Refs struct {
TotalCount githubv4.Int //number of branches
Nodes []ref
PageInfo pageInfo
}`graphql:"refs(refPrefix:$prefix,first:$refFirst,after:$refAfter,orderBy:$orderBy)"`
} `graphql:"repository(owner:$login,name:$repositoryName)"`
}
type ref struct {
Name githubv4.String
Prefix githubv4.String
Target struct {
AbbreviatedOid githubv4.String
ID githubv4.GitObjectID
//History struct {
// TotalCount githubv4.Int
//}`graphql:"history(first:0)"`
}`graphql:"... on Commit"`
}
Но я получаю это сообщение об ошибке:
Fragment on Commit can't be spread inside Ref
Однако я не могу найти какую-либо полезную документацию. Кто-нибудь может сказать мне, что я делаю не так, пожалуйста?