我们正试图找到一种方法,在特定的提交中使用REST API从Bitbucket项目下载单个文件。目前,我们可以在特定分支下载文件:
请注意,URL的末尾在解码时包含查询参数at=refs/heads/master
,它引用master
分支。这也适用于特定标签:
这里查询参数at=refs/tags/testtag1
引用标签(commit)testtag1
。
但是由于我们实现的性质,我们希望通过Bitbucket REST API直接引用提交SHA-1哈希。这可能吗?
显然,一个丑陋的解决方法是只为每个提交添加一个标记。但这可能会使存储库膨胀,这也感觉就像是一个不必要的黑客攻击。
在this SO question的帮助下,我发现其中一个答案让我知道正确的语法。用这个:
<URL>?at=commit_hash
例如:
以下是使用Bitbucket REST API的三种主要端点类型的表:
query parameter | role
---------------------------------------------
refs/heads/master | specify master branch
refs/tags/someTag | specify 'someTag' tag
at=bed2dda5 | specify commit #bed2dda5