如何在GitHub上获取特定版本的所有提交记录?

3

我知道可以使用GET /repos/:owner/:repo/commits获取一个项目中的所有提交

现在我想要获取该项目特定发布版的所有提交

我应该怎么做?


定义哪些提交与发布相关?您是想获取在发布之间的提交还是在发布标记之前的所有提交? - Ian Stapleton Cordasco
嗨,sigmavirus24,像这些提交一样:github - Peter Guan
所以您想要自某个版本发布以来的提交记录? - Ian Stapleton Cordasco
1个回答

2
根据您对我的问题的回答,您想获取某个标签以来提交的内容。这需要完成几个步骤,首先需要获取该标签的SHA值。您需要使用 git references API获取特定引用。在您提供的具体示例中,您需要执行以下操作:
GET /repos/nasa/mct/git/refs/tags/v1.8b3

你需要从响应对象的“object”属性中存储的对象中获取“sha”属性。使用“sha”属性,您将想要使用commits API列出以该'sha'开头的提交, 因此您的请求将如下所示:
GET /repos/nasa/mct/commits?sha=%(sha_from_first_request)s

这将默认为每页30个提交记录(如果我记得正确的话),因此您应该尝试在末尾添加&per_page=100,看看是否有所帮助。我无法告诉您如何在Java中实现这一点,但我相信您可以使用其中一个与API交互的来使其更容易。

我很欣赏您的方法,这应该是一个解决方案。谢谢! - Peter Guan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接