如何获取 GitHub 中某个版本的所有提交?
How to get all commits for a certain release in GitHub?
我知道我可以使用GET /repos/:owner/:repo/commits
在项目中获得所有提交
现在我想获得 项目 的某个 版本 的所有 提交 。
我该怎么办?
根据您对我的问题的回答判断,您希望提交 since 某个标记。这将需要几个步骤才能完成,首先您需要获取相关标签的 SHA。您需要使用 git references API to get a specific reference。在您链接的具体示例中,您需要执行
GET /repos/nasa/mct/git/refs/tags/v1.8b3
并且您需要从存储在响应对象的 'object' 属性中的对象中获取 'sha' 属性。对于 'sha' 属性,您需要使用 commits API to list commits starting with that 'sha',因此您的请求将如下所示:
GET /repos/nasa/mct/commits?sha=%(sha_from_first_request)s
默认情况下每页有 30 次提交(如果我没记错的话),所以您应该看看在末尾添加 &per_page=100
是否有帮助。我无法在 Java 中准确地告诉您如何执行此操作,但我希望您能够使用其中一种 libraries written to interact with the API 来简化操作。
我知道我可以使用GET /repos/:owner/:repo/commits
现在我想获得 项目 的某个 版本 的所有 提交 。
我该怎么办?
根据您对我的问题的回答判断,您希望提交 since 某个标记。这将需要几个步骤才能完成,首先您需要获取相关标签的 SHA。您需要使用 git references API to get a specific reference。在您链接的具体示例中,您需要执行
GET /repos/nasa/mct/git/refs/tags/v1.8b3
并且您需要从存储在响应对象的 'object' 属性中的对象中获取 'sha' 属性。对于 'sha' 属性,您需要使用 commits API to list commits starting with that 'sha',因此您的请求将如下所示:
GET /repos/nasa/mct/commits?sha=%(sha_from_first_request)s
默认情况下每页有 30 次提交(如果我没记错的话),所以您应该看看在末尾添加 &per_page=100
是否有帮助。我无法在 Java 中准确地告诉您如何执行此操作,但我希望您能够使用其中一种 libraries written to interact with the API 来简化操作。