说我有patch-1
,patch-2
,patch-3
之类的分支,这些分支通过提高PR合并到master
(分支尚未合并)。我想获取用于将patch-1
合并到master
的PR的信息,例如PR号,PR上的评论。如何使用Github API做到这一点?我已经阅读了文档,但似乎找不到能帮助我做到这一点的API。
答案 0 :(得分:0)
NB :我不知道如何通过API做到这一点!
...但是我注意到GitHub已经开始提供此信息,作为它显示的有关特定提交的信息的一部分。例如,看看https://github.com/ansible/ansible/commit/a01376a493a755923895893e21ac3ce7e4b12ed2;在提交消息的正下方,您可以看到指向引入此提交的拉取请求的链接:
此外,我可以看到页面加载后 会更新信息,这意味着有一个显式的javascript请求正在用于获取该信息。通过打开浏览器的开发功能,我们可以准确地看到正在发生的事情。在这种情况下,我看到了以下要求:
https://github.com/ansible/ansible/branch_commits/a01376a493a755923895893e21ac3ce7e4b12ed2
从该URL返回的值是:
<svg class="octicon octicon-git-branch" viewBox="0 0 10 16" version="1.1" width="10" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M10 5c0-1.11-.89-2-2-2a1.993 1.993 0 00-1 3.72v.3c-.02.52-.23.98-.63 1.38-.4.4-.86.61-1.38.63-.83.02-1.48.16-2 .45V4.72a1.993 1.993 0 00-1-3.72C.88 1 0 1.89 0 3a2 2 0 001 1.72v6.56c-.59.35-1 .99-1 1.72 0 1.11.89 2 2 2 1.11 0 2-.89 2-2 0-.53-.2-1-.53-1.36.09-.06.48-.41.59-.47.25-.11.56-.17.94-.17 1.05-.05 1.95-.45 2.75-1.25S8.95 7.77 9 6.73h-.02C9.59 6.37 10 5.73 10 5zM2 1.8c.66 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2C1.35 4.2.8 3.65.8 3c0-.65.55-1.2 1.2-1.2zm0 12.41c-.66 0-1.2-.55-1.2-1.2 0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2zm6-8c-.66 0-1.2-.55-1.2-1.2 0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2z"/></svg>
<ul class="branches-list">
<li class="branch"><a href="/ansible/ansible">devel</a></li>
<li class="pull-request">(<a title="Merged Pull Request: update configuring ansible-galaxy client" href="/ansible/ansible/pull/64796">#64796</a>)</li>
</ul>
换句话说,请求https://github.com/:owner/:repo/branch_commits/:commit
以获得有关引入提交的拉取请求的信息。
这是HTML的机器可解析的漂亮片段,其中包含拉取请求ID。通过API可能有更好的方法。