You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Azure DevOps REST API获取两个标签间的代码变更行数?

获取Azure DevOps仓库两标签间代码行数变更的正确方法

问题拆解

你碰到的核心问题:

  • Git Diffs API返回的changeCounts仅统计文件变更数量,并非代码行数
  • 仅用单个提交ID调用Commits Get Changes API,无法覆盖两个标签之间的所有提交记录

解决步骤

  1. 获取标签对应的提交ID
    调用Git Refs API,传入目标标签名称,获取该标签指向的提交SHA值。

  2. 拉取两标签间的完整提交列表
    使用Git Commits API,指定fromCommitId和toCommitId参数(即两个标签对应的提交ID),获取这段区间内的所有提交记录。

  3. 遍历提交统计代码行数
    对每一条提交的ID,调用Commits Get Changes API:

    • 接口返回的changes数组中,每个变更项包含diff字段,该字段记录了具体的代码变动内容
    • 解析diff内容,统计以+开头的新增代码行数、以-开头的删除代码行数
    • 将所有提交的统计结果汇总,得到两个标签间的总代码变更行数

注意事项

  • 若需要精准统计,可在解析diff时排除注释行、空行等非业务代码行
  • 当区间内提交数量较多时,建议添加分页参数分批请求,避免出现超时或请求失败的情况

内容的提问来源于stack exchange,提问作者sai anudeep

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 18:05:30