如何使用az devops invoke命令调用Azure DevOps获取提交REST API
使用az devops invoke调用Git提交记录接口的正确方式
你遇到的问题核心是没有正确指定嵌套的资源路径,/commits是repositories/{repositoryId}的子资源,需要在--resource参数中体现这种层级关系,同时通过--route-parameters传递仓库ID占位符。
正确命令示例
# 若已通过az devops configure设置默认组织,可省略--organization参数 az devops invoke \ --organization https://dev.azure.com/你的组织名 \ --area git \ --resource repositories/{repositoryId}/commits \ --route-parameters project=你的项目名 repositoryId=你的仓库ID \ --api-version 7.0
命令说明
--area git:指定API所属的领域为Git服务--resource repositories/{repositoryId}/commits:明确资源路径,对应REST API中/repositories/{repositoryId}/commits的部分--route-parameters:填充路径中的占位符{project}和{repositoryId}--api-version:指定API版本,和目标REST API保持一致
为什么之前的命令无效
- 仅指定
--resource repositories时,调用的是仓库列表/详情接口,自然返回仓库信息 - 直接指定
--resource commits时,由于缺少父资源repositories/{repositoryId}的关联,无法定位到具体仓库的提交记录接口
内容的提问来源于stack exchange,提问作者JDH
相关产品推荐
相关产品推荐

