Bitbucket REST 接口和 GIT;如何从分支获取两个标签之间的日志历史记录

Bitbucket REST interface and GIT; how to get a log history between two tags from a branch

我正在构建一个应用程序,它需要来自 git 的所有提交评论针对远程源上的分支提交。我们的存储库托管在 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

"Gets the commits accessible from the {@code from} commit but not in the {@code to} commit."

这是一个针对我的演示服务器的示例调用(可能需要先以用户 "test" 身份登录并通过 "test"),returns 有 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,您可能会对我的 Bit-Booster Commit Graph and More add-on to visually verify the correct commits are being returned, like so:

感兴趣

在这种情况下,与 "AUI-1546" 匹配的 5 个提交是我上面的示例 "commits/compare" REST API 调用返回的提交。您可以在此图中非常清楚地看到它们是如何准确地表示 1.) 可从 a6e64f4fd0e 访问和 2.) 不可从 master.

访问的 5 次提交