【问题标题】:How to fetch GitHub branch names using GraphQL如何使用 GraphQL 获取 GitHub 分支名称
【发布时间】:2021-01-30 23:26:01
【问题描述】:

使用 GitHub GraphQL API (v.4) 我想获取给定存储库中存在的所有分支名称。

我的尝试

{
  repository(name: "my-repository", owner: "my-account") {
    ... on Ref {
      name
    }
  }
}

返回错误:

{'data': None, 'errors': [{'message': "Fragment on Ref can't be spread inside Repository", 'locations': [{'line': 4, 'column': 13}]}]}

【问题讨论】:

    标签: branch graphql github-api github-graphql


    【解决方案1】:

    以下是如何从 repo 中检索 10 个分支:

    {
      repository(name: "git-point", owner: "gitpoint") {
        refs(first: 10, , refPrefix:"refs/heads/") {
          nodes {
            name
          }
        }
      }
    }
    

    PS:在处理 Union 类型时通常使用 spread(例如 IssueTimeline,它由不同类型的对象组成,因此您可以在特定的对象类型上展开来查询特定字段。


    您可能需要使用pagination 来获取所有分支

    【讨论】:

    • 有没有办法获取存储库的所有分支而不是first: 10?如果我没有向refs 提供first 参数,API 会给我一个错误,但是我如何告诉 API 我想要所有分支?
    猜你喜欢
    • 2019-12-19
    • 2020-06-03
    • 2020-04-10
    • 2023-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-18
    相关资源
    最近更新 更多