BitBucket API:如何从存储库UUID

时间:2019-01-28 18:28:41

标签: bitbucket bitbucket-api

可以说,到目前为止,

BitBucket API一直是一种有趣的体验。

有时,我们会在各种URL上生成非常简短的文档,并在bitbucket.org/rest/api/1.0api.bitbucket.org/2.0等之间添加一些功能,并提供一种获取存储库列表的方法:

GET https://api.bitbucket.org/2.0/repositories?role=x

此响应包含回购的UUID,文档说:

  

这可以代替   URL中的段段。 这样做可以确保您的网址继续存在   由存储库所有者重命名存储库,甚至转移存储库   存放给其他用户。

听起来像是我的常识!那么getting a list of branches呢?

GET https://api.bitbucket.org/2.0/repositories/{username}/{repo_slug}/refs/branches

UUID可以代替repo_slug,这很好。但是它也很奇怪地想要username(它也可能是组织名称,这很令人困惑)。因此,对移动存储库具有弹性的观点毫无意义。存储库列表是否返回此信息? 没有

那么,如何使用存储库UUID找出username,或者更好地获取仅包含UUID的分支列表,这像在GitLab / GitHub上那样是明智的支持?谢谢。

1 个答案:

答案 0 :(得分:1)

看起来您一旦拥有回购UUID,就可以将%7B%7D替换为空的用户/团队名称。

来自this documentation

  

一旦有了存储库的UUID,就不再需要用户名   或团队名称即可调用API,只要您使用一个空字段即可。

     

这有助于您解析存储库,无论用户名或团队是   名称更改。

     

以团队名称(1team)和存储库名称(moxie)呼叫:

     

curl https://api.bitbucket.org/2.0/repositories/1team/moxie

     

使用UUID和空白字段进行呼叫:

     

curl https://api.bitbucket.org/2.0/repositories/%7B%7D/%7B21fa9bf8-b5b2-4891-97ed-d590bad0f871%7D

     

使用UUID和团队名称拨打电话:

     

curl https://api.bitbucket.org/2.0/repositories/1team/%7B21fa9bf8-b5b2-4891-97ed-d590bad0f871%7D