【问题标题】:How to get merge commit SHA for merged pull request?如何为合并的拉取请求获取合并提交 SHA?
【发布时间】:2014-10-29 08:46:29
【问题描述】:

有一个相关的问题GET pull request merge commit sha from pull request number using github api,但没有答案。

根据 GitHub API,一旦合并 Pull Request,它会触发 pull_request 事件和 action: closed。该事件是来自事件 API 的 also available。但是,只有 merged(如果合并拉取请求,则为 true)和已弃用的 merge_commit_sha(临时合并提交的 SHA,而不是合并拉取请求的实际提交)字段。

还有API for dealing with pull requests;然而,根据文档,它也只会返回拉取请求是否被合并,以及临时提交 SHA 是什么(在已弃用的字段中)。

拉取请求显然与合并提交相关联,因为提交 SHA 显示在拉取请求页面上:

在知道拉取请求 ID 的情况下,有没有办法以编程方式获取拉取请求合并到基础的提交的 SHA?

【问题讨论】:

    标签: github github-api


    【解决方案1】:

    所有拉取请求也是问题。所以你可以为任何拉取请求获取Issue Events。这样,就会有一个commit_id。如果该属性与 merged 属性一起存在,那么它应该是合并提交的 SHA。

    【讨论】:

    • 这实际上允许一个人获得一个合并提交号;获取问题的所有事件(例如api.github.com/repos/twbs/bootstrap/issues/14930/events)并找到带有event: "merged" 的事件就足够了。但是,这种方式似乎“不好”,因为需要获取所有事件才能获得提交号(单个问题很容易有数千个事件);所以我现在不会接受你的答案,以防有人会给出另一个答案。
    猜你喜欢
    • 2014-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-15
    • 1970-01-01
    • 1970-01-01
    • 2013-11-27
    相关资源
    最近更新 更多