首页 > 解决方案 > 计算提交的代码更改行数?

问题描述

有没有办法为每个文件计算 Azure Devops中的拉取请求 API中的代码行。我浏览了以下两个链接,但没有太大帮助。

有没有办法通过 Dev Ops 服务 REST API 获取拉取请求中更改的行数?

在 TFS rest api 中的每个 Commit 中修改的代码行。如何得到?

谢谢你。

标签: c#apiazure-devopspull-request

解决方案


脚步:

一个。获取指定拉取请求的提交 ID

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

湾。通过提交 ID获取提交路径

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

C。通过提交 ID获取父母提交ID

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

d。通过以下 API 和请求正文获取结果。

POST https://dev.azure.com/{Org name}/_apis/Contribution/HierarchyQuery/project/{Project name}?api-version=5.1-preview

请求正文:

{
  "contributionIds": [
    "ms.vss-code-web.file-diff-data-provider"
  ],
  "dataProviderContext": {
    "properties": {
      "repositoryId": "{Repo ID}",
      "diffParameters": {
        "includeCharDiffs": true,
        "modifiedPath": "{Commit path}",
        "modifiedVersion": "GC{Commit ID}",
        "originalPath": "{Commit path}",
        "originalVersion": "GC{parents commit ID}",
        "partialDiff": true
      }
    }
  }
}

结果:

在此处输入图像描述


推荐阅读