gpt4 book ai didi

rest - 有没有办法使用 API 列出拉取请求文件(来自源分支)及其在 Azure Devops 中的位置?还有其他使用C#的方法吗?

转载 作者:行者123 更新时间:2023-12-03 08:42:19 28 4
gpt4 key购买 nike

我的要求是使用 API 或 C# 读取/提取 Azure DevOps 拉取请求中存在的每个文件的源代码。我可以使用下面的示例 URL 下载特定文件的代码 -

GET https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/items?path=/{CodePath}&version={branch name}&api-version=5.1

现在我需要文件列表及其存储在 Azure DevOps 分支中的位置

我尝试了来自可用 REST API 的不同 GET 调用。例如:

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

GET https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/pullRequests/{pullRequestId}/attachments/{fileName}?api-version=5.1-preview.1

这些调用正在返回信息:

  1. 关于文件提交
  2. 关于说明中所附文件

我必须满足要求的信息:组织名称、存储库名称、分支名称、拉取请求 ID

最佳答案

Is there a way to list pull request files(from source branch) with it's location in Azure Devops using APIs? Is there any other way using C#?

恐怕没有这样的方法可以使用 API 列出拉取请求文件(来自源分支)及其在 Azure Devops 中的位置。

首先,当我们使用拉取请求 API 时,我们可以直接获取组织名称拉取请求 ID

然后我们可以使用 REST API Pull Requests - Get Pull Requests获取存储库名称sourceRefName(分支名称):

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

enter image description here

其次,我们可以使用 REST API Pull Request Commits - Get Pull Request Commits获取 PR 中的提交:

enter image description here

然后,我们可以通过 REST API 使用提交 ID Commits - Get Changes到文件路径:

enter image description here

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

希望这有帮助。

关于rest - 有没有办法使用 API 列出拉取请求文件(来自源分支)及其在 Azure Devops 中的位置?还有其他使用C#的方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62370280/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com