有没有办法使用 API 将拉请求文件(来自源分支)与它在 Azure Devops 中的位置一起列出?有没有其他方法使用C#?

问题描述 投票:0回答:1

需求是使用API或C#重新提取Azure DevOps拉动请求中存在的每个文件的源代码.我能够使用下面的示例URL下载特定文件的代码--。

获取 https:/dev.azure.com。{organization}{project}_apisgitrepositories{repositoryId}items?path={CodePath}&version={branch name}&api-version=5.1。

现在我需要的是,Azure DevOps的一个分支中存储的文件列表以及它的位置。

我已经尝试了不同的GET调用REST APIs.Ex - GET https:/dev.azure.com。{organization}{project}_apisgitrepositories{repositoryId}pullRequests{pullRequestId}iterations{iterationId}?api-version=5.1orGET。https:/dev.azure.com。{organization}{project}_apisgitrepositories{repositoryId}pullRequests{pullRequestId}attachments{fileName}?api-version=5.1-preview.1。

这些调用返回的信息是:1.关于文件提交的信息2.关于描述中附加的文件。关于描述中附加的文件

我需要满足的信息--组织名称,存储库名称,分支名称,Pull请求ID。

先谢谢你

azure-devops pull-request azure-devops-rest-api downloadfile restapi
1个回答
0
投票

是否有一种方法来列出拉请求文件(从源分支)与它的位置在Azure Devops使用API?有没有其他方法使用C#?

在Azure Devops中使用API将拉请求文件(从源分支)与它的位置列出,恐怕没有这样的方法。

首先,当我们使用pull request API时,我们可以得到的是 Organization namePull request ID 直接使用。

然后我们可以使用REST API 拉动请求 - 获取拉动请求 以获得 repository namesourceRefName (Branch Name):

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

enter image description here

第二,我们可以使用REST API 拉动请求承诺 - 获取拉动请求承诺 来获取PR中的提交内容。

enter image description here

然后,我们可以使用REST API的提交ID 承诺--获取变更 到文件路径。

enter image description here

现在,我们得到了所有我们想要的信息。

希望这能帮助我们。

© www.soinside.com 2019 - 2024. All rights reserved.