6

v3 具有用于检索 readme.md 文件的特定 API。但是在新的 V4 GraphQL 中,Repository Object 中没有这样的字段。

有谁知道如何检索自述文件?

谢谢!

4

2 回答 2

11

目前还没有特定实体来获取 README.md 文件,但您可以像通常检索任何其他文件一样检索它:

{
  repository(owner: "gitpoint", name: "git-point") {
    object(expression: "master:README.md") {
      ... on Blob {
        text
      }
    }
  }
}
于 2017-09-16T14:13:58.060 回答
2

看起来因为 GitObject 实现了 Blob,您可以使用“... on”语法来访问它的属性,其中将包含对象的内容。

为了访问有问题的对象,请以“branch:filename.ext”格式传入带有扩展名的分支和文件名,并从结果中检索 Blob,并从中检索文本。

可以同时检索多个对象,允许您检查替代大小写,例如小写“readme.md”名称。只需为对象提供别名。下面的例子。

   {
    repository(owner: "owner", name: "name") {
      upCase: object(expression: "master:README.md") {
        ... on Blob {
          text
        }
      }
      object(expression: "master:readme.md") {
        ... on Blob {
          text
        }
      }
      otherFile: object(expression: "master:index.js") {
        ... on Blob {
          text
        }
      }
    }

这可能有助于解释“... on”语法。 https://graphql.github.io/graphql-spec/June2018/#sec-Inline-Fragments

于 2019-05-24T14:53:42.407 回答