Rub*_*nst 11 api github github-api
我在使用GitHub API时遇到了一个问题/疑问.
我需要一个在单个标签之后创建的所有标签的列表.唯一的方法是按日期比较标签.但是,API的结果不按日期排序:
API的结果(rails repository示例):
来自网络界面的结果:
我所期待的是按日期排序的列表.但是,正如您在图片中看到的那样:API在v4.0.0发布之前返回v4.0.0rc1和v4.0.0rc2,而4.0.0在发布候选版本之后发布.在服务器端甚至没有订购的创建/提交日期.
版本API也不是解决方案.此API仅返回由Github创建的版本,而不是由标记创建的版本.
有没有办法按日期订购标签?
提前致谢!
鲁本
使用GraphQL API v4,我们现在可以通过field: TAG_COMMIT_DATE
内部orderBy
. 以下将按提交日期执行升序排序标签:
{
repository(owner: "rails", name: "rails") {
refs(refPrefix: "refs/tags/", last: 100, orderBy: {field: TAG_COMMIT_DATE, direction: ASC}) {
edges {
node {
name
target {
oid
... on Tag {
message
commitUrl
tagger {
name
email
date
}
}
}
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
在这里,tagger
里面的字段target
只会为带注释的标签填充,对于轻量级标签将为空。
由于date
属性 intagger
给出了标签的创建日期(仅适用于带注释的标签),因此可以轻松地在客户端按创建日期进行过滤(无需一一检索所有标签)
请注意,此时可用的选项orderBy.field
是TAG_COMMIT_DATE
& ALPHABETICAL
(no TAG_CREATION_DATE
)
归档时间: |
|
查看次数: |
2459 次 |
最近记录: |