如何在Gitlab中检索文件的所有提交

1bqhqjot  于 2023-11-15  发布在  Git
关注(0)|答案(1)|浏览(224)

我可以使用下面的URL检索文件的提交。

https://gitlab.aws.site.domain.com/api/v4/projects/68456/repository/commits?path=testflow/flow.java

字符串
但是添加可选参数all,最终得到空数组。

https://gitlab.aws.site.domain.com/api/v4/projects/68456/repository/commits?path=testflow/flow.java&all=true


只使用path调用会得到我最新的结果?而且all并不适用于所有跨分支的提交。我想如果ref_name没有被传递,它会采用默认值。我也尝试了上面的api与ref_name,但同样的响应。

deyfvvtc

deyfvvtc1#

all参数与path参数不兼容。必须使用path参数,而不使用all参数。
如果文件有很多更改,您需要使用多个请求对API结果进行分页。这适用于GitLab中几乎所有返回20个以上结果的API端点。
例如,URL https://gitlab.com/api/v4/projects/278964/repository/commits?path=.gitlab-ci.yml将从API返回前20个结果。要获得 * 下 * 20页,您将添加page参数和下一页编号:

  • ?path=.gitlab-ci.yml&page=2第二页
  • ?path=.gitlab-ci.yml&page=3第三页

您可以使用响应头来知道下一个要请求的页面是什么。
您还可以按照API文档中的说明配置per_page参数,例如?path=.gitlab-ci.yml&page=1&per_page=100

相关问题