需求是使用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使用API?有没有其他方法使用C#?
在Azure Devops中使用API将拉请求文件(从源分支)与它的位置列出,恐怕没有这样的方法。
首先,当我们使用pull request API时,我们可以得到的是 Organization name
和 Pull request ID
直接使用。
然后我们可以使用REST API 拉动请求 - 获取拉动请求 以获得 repository name
和 sourceRefName
(Branch Name
):
GET https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/pullrequests?api-version=5.1
第二,我们可以使用REST API 拉动请求承诺 - 获取拉动请求承诺 来获取PR中的提交内容。
然后,我们可以使用REST API的提交ID 承诺--获取变更 到文件路径。
现在,我们得到了所有我们想要的信息。
希望这能帮助我们。