Azure Repos REST API用于获取合并请求中已更改文件的列表

Azure Repos REST API用于获取合并请求中已更改文件的列表,azure,azure-devops,azure-devops-rest-api,Azure,Azure Devops,Azure Devops Rest Api,目标:每当拉取请求获得批准并且审阅者在azure repos中完成(合并)拉取请求时,我想确定该合并请求中的文件列表。基于文件扩展名,我必须触发相应的构建管道 问题:到目前为止,从azure devOps门户似乎不可能做到这一点,我需要REST API来做到这一点。请给我指出API/API,它们帮助我确定合并请求中已更改文件的列表 分析:我也看到但不确定在管道中从何处获取mergeOperationId。作为解决方法,您可以找到已完成的PRs并检查其提交。的GitHttpClient示例 Res

目标:每当拉取请求获得批准并且审阅者在azure repos中完成(合并)拉取请求时,我想确定该合并请求中的文件列表。基于文件扩展名,我必须触发相应的构建管道

问题:到目前为止,从azure devOps门户似乎不可能做到这一点,我需要REST API来做到这一点。请给我指出API/API,它们帮助我确定合并请求中已更改文件的列表


分析:我也看到但不确定在管道中从何处获取mergeOperationId。

作为解决方法,您可以找到已完成的PRs并检查其提交。的GitHttpClient示例

Rest Api方法:


  • 作为解决方法,您可以找到已完成的PRs并检查其提交。的GitHttpClient示例

    Rest Api方法:


  • 您可以从UI页面获取合并请求中更改的文件列表

    如果您想通过RESTAPI获得已更改文件的列表,则需要使用Shamrai Aleksander提供的方法

    首先,您需要使用提交RESTAPI来获取请求提交

    GET https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/pullRequests/{pullRequestId}/commits?api-version=5.1
    
    然后根据restapi读取
    path
    参数以获取更改的文件,并在循环中获取更改的文件列表

    GET https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/commits/{commitId}/changes?api-version=5.1
    

    您可以从UI页面获取合并请求中更改的文件列表

    如果您想通过RESTAPI获得已更改文件的列表,则需要使用Shamrai Aleksander提供的方法

    首先,您需要使用提交RESTAPI来获取请求提交

    GET https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/pullRequests/{pullRequestId}/commits?api-version=5.1
    
    然后根据restapi读取
    path
    参数以获取更改的文件,并在循环中获取更改的文件列表

    GET https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/commits/{commitId}/changes?api-version=5.1