当我只有拉取请求时,如何在 Microsoft VSTS API 中获取父分支详细信息

How can I get parent branch detail in Microsoft VSTS API when I have only Pull request I'd

我正在处理补丁发布。我正在使用 Microsoft VSTS API 从 vsts 获取更改列表。我有 3 个分支,例如 A -> B -> C。 A 是基本分支,b 是从 A 创建的子分支,c 是从 B 创建的子分支。因此,无论我在 A 和 B 中所做的任何更改都将在 C 分支以及 C 分支中进行更改。现在我有一个针对 C 分支的拉取请求。我能够使用拉取请求获得 C 分支的所有提交。但我想获得 C 的父级 class 详细信息,然后是 A。我试过了,但没有找到任何东西。

通过Get Pull Request By Idrestapi,可以从响应体中得到repository idsourceRefNametargetRefName

然后可以通过repository idsourceRefName参数调用Get Commits Batchrestapi获取父分支的所有commit

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

示例请求正文:

{
  "itemVersion": {
    "versionType": "branch",
    "version": "dev"
  }
}

响应示例:

{
    "count": 32,
    "value": [
        {
            "commitId": "bbcb0ee346961422c686fd4d3b2f63f74dffa1e3",
            "author": {
                "name": "hughl01",
                "email": "xxx@hotmail.com",
                "date": "2020-05-20T01:44:05Z"
            },
            "committer": {
                "name": "hughl01",
                "email": "xxx@hotmail.com",
                "date": "2020-05-20T01:44:05Z"
            },
            "comment": "Deleted NEW",
            "changeCounts": {
                "Add": 0,
                "Edit": 0,
                "Delete": 2
            },
            "url": "https://dev.azure.com/xx/59b994e8-4a77-46a1-8b5d-xx/_apis/git/repositories/da09f0c6-1999-45b5-bb93-faa59f69fa24/commits/bbcb0ee346961422c686fd4d3b2f63f74dffxx",
            "remoteUrl": "https://dev.azure.com/xx/xx/_git/forTest/commit/bbcb0ee346961422c686fd4d3b2f63f74dfxx"
        },
 ...
}