我正在构建一个应用程序,它需要来自git commits的针对远程源上分支的所有commit注释。我们的存储库托管在Bitbucket服务器上,是一个Git存储库。
我查看了Bitbucket(stash)rest API,通过浏览提交,可以返回Git注释,如下所示:
https://mybitbucket.local/rest/api/1.0/projects/myslug/repos/myproduct/commits?limit=1000&branch=mybranch
我现在需要的是一种机制,可以在两个标记之间请求内容,这只是为了提高效率。这可能吗?我认为提供两个标记作为参数,比如&fromtag=x&totag=y……
我找不到这个,而且文档有点稀疏…:。(
有办法吗?
最佳答案
请参阅Bitbucket服务器的“compare/commits”Rest API调用:
/rest/api/1.0/projects/{projectKey}/repos/{repositorySlug}/compare/commits
“从{@code from}提交获取可访问的提交,但不在{@code to}提交中。”
下面是一个针对我的演示服务器的调用示例(可能需要首先以用户“test”的身份登录,并通过“test”返回5个提交,这些提交可以从
a6e64f4fd0e
中看到,但从master
中看不到:http://vm.bit-booster.com/bitbucket/rest/api/1.0/projects/BB/repos/aui/compare/commits?from=a6e64f4fd0e&to=master&limit=100
因为您使用的是bitbucket/stash,所以您可能对myBit-Booster Commit Graph and More插件感兴趣,它可以直观地验证返回的提交是否正确,like so:
在本例中,匹配“aui-1546”的5个提交就是我上面的示例“commits/compare”rest api调用返回的提交。在这个图中,您可以非常清楚地看到它们是如何精确地5个提交的,1.)可以从
a6e64f4fd0e
访问,2.)不能从master
访问。