如何在Azure DevOps中获取多项目的代码基础统计指标?
在Azure DevOps中获取项目与仓库基础统计的实现方法
一、通过Azure DevOps UI手动查看(适合少量项目/仓库)
- 项目下仓库数量及名称:进入目标项目的「Repos」模块,首页会列出该项目下所有代码仓库,直接统计数量或查看页面顶部的标识,也可导出仓库列表为CSV文件。
- 仓库分支数量:进入单个仓库的「Branches」页面,页面顶部会显示分支总数,下方列表可查看所有分支名称。
- 开发者信息及提交/PR记录:
- 进入仓库的「Commits」页面,筛选所有提交记录,页面会展示所有提交者的用户名;点击单个提交者,可查看其在该仓库的首次、末次提交时间。
- 进入「Pull Requests」页面,筛选所有状态的PR,可查看参与PR的开发者列表;点击单个开发者的PR记录,能找到其首次、末次创建/参与的PR。
二、通过Azure DevOps CLI批量处理(适合20个项目+100个仓库的场景)
先确保已安装并配置Azure DevOps CLI(执行az devops login完成身份验证),以下是常用命令:
- 获取项目下所有仓库
# 列出指定项目的所有仓库(表格格式输出) az repos list --project "项目名称" --output table # 统计仓库数量 az repos list --project "项目名称" --query "length(@)"
- 获取仓库分支数量
# 列出指定仓库的所有分支 az repos branch list --repository "仓库名称" --project "项目名称" --output table # 统计分支数量 az repos branch list --repository "仓库名称" --project "项目名称" --query "length(@)"
- 获取分支文件数与代码行数
Azure DevOps CLI无直接统计命令,可结合git工具批量处理:
# 克隆仓库(批量场景可循环处理) git clone <仓库克隆URL> cd <仓库目录> # 统计当前分支文件数量 git ls-files | wc -l # 统计当前分支代码行数(需提前安装cloc工具) cloc . --exclude-dir=node_modules,bin --exclude-ext=.md,.txt
- 获取开发者首次/末次提交
# 列出仓库所有提交者(去重) git log --format='%aN' | sort -u # 查看指定开发者的首次提交日期 git log --author="开发者用户名" --pretty=format:"%ad" --date=short | sort | head -1 # 查看指定开发者的末次提交日期 git log --author="开发者用户名" --pretty=format:"%ad" --date=short | sort | tail -1
三、PowerShell脚本批量自动化(高效处理大量项目/仓库)
可编写PowerShell脚本循环遍历所有目标项目和仓库,整合上述CLI与git命令,自动生成CSV格式的统计报表,核心逻辑:
- 列出所有需要统计的项目
- 遍历每个项目,获取其下所有仓库
- 对每个仓库,依次执行分支统计、文件数/代码行数统计、开发者提交记录统计
- 将所有统计结果统一写入CSV文件,方便后续查看
内容的提问来源于stack exchange,提问作者Anders Finn Jørgensen
相关产品推荐
相关产品推荐

