到目前为止,BitBucket API 是一次有趣的经验。
我们有时会在各种 URL 上生成非常简短的文档,并在 bitbucket.org/rest/api/1.0
、api.bitbucket.org/2.0
等之间散布功能的部分,以及获取存储库列表的方法:
GET https://api.bitbucket.org/2.0/repositories?role=x
这个响应包含一个UUID,用于代替URL中的slug段落。根据文档所说:
这可以被用作URL中slug段落的替代。使用这种方法可以保证你的URL在仓库所有者重命名或将仓库转让给其他用户时不会失效。听起来很合理!那么如何获取分支列表呢?
GET https://api.bitbucket.org/2.0/repositories/{username}/{repo_slug}/refs/branches
UUID
可以替代 repo_slug
,这很好。但奇怪的是它还需要 username
(有时也可以是组织名),所以对于移动存储库的弹性问题毫无意义。而且存储库列表会返回吗?不会。那么,使用存储库 UUID,我该如何找到
username
,或者更好的方法是只用 UUID 获取分支列表,这是 GitLab/GitHub 支持的明智之举。谢谢。