Есть связанный вопрос GET pull request merge commit sha from pull request number using github api, но ответа нет.
Согласно GitHub API, после слияния Pull Request запускается событие pull_request
с action: closed
. Событие также доступно в API событий. Однако есть только поля merged
(что равно true
, если пул-реквест был объединен) и устаревший merge_commit_sha
(SHA временной фиксации слияния, а не фактическая фиксация, с помощью которой был объединен пул-реквест).
Также существует API для обработки запросов на вытягивание. ; тем не менее, согласно документации, он также будет возвращать только то, был ли объединен запрос на вытягивание, и что такое SHA временной фиксации (в устаревшем поле).
Запрос на извлечение явно связан с фиксацией слияния, так как SHA фиксации отображается на странице запроса на извлечение:
Есть ли способ получить программно SHA коммита, с помощью которого запрос на перенос был объединен с базой, зная идентификатор запроса на перенос?
Все запросы на вытягивание также являются проблемами. Таким образом, вы можете получить события проблемы для любого запроса на слияние. При этом будет
commit_id
. Если этот атрибут присутствует с атрибутомmerged
, то это должен быть SHA фиксации слияния.Это фактически позволяет получить номер фиксации слияния; достаточно получить все события для проблемы (например, api.github. com / repos / twbs / bootstrap / issues / 14930 / events) и найдите один с
event: "merged"
. Однако этот способ кажется плохим, поскольку для получения номера фиксации требуется получить все события (а для одной проблемы легко могут быть тысячи событий); так что я воздержусь от вашего ответа прямо сейчас на случай, если кто-то даст еще один. — person penartur; 30.10.2014