MR 規模分析,檢視規模分佈並識別過大的 MR。
- 分析 MR 規模分佈(XS / S / M / L / XL)
- 識別過大的 MR(L 和 XL)
- 追蹤團隊小批量工作模式
# 分析最近 30 天
gitlab-mr mr-size -p your-team/your-project
# 分析最近 60 天
gitlab-mr mr-size -p your-team/your-project --days 60
# 指定日期範圍
gitlab-mr mr-size -p your-team/your-project \
--since 2025-11-01 --until 2025-11-30
# 顯示過大 MR 清單
gitlab-mr mr-size -p your-team/your-project --oversized
# 顯示月度趨勢
gitlab-mr mr-size -p your-team/your-project --trend
# JSON 輸出
gitlab-mr mr-size -p your-team/your-project --json| 參數 | 說明 |
|---|---|
-p, --project |
GitLab 專案(ID 或路徑) |
-t, --token |
GitLab Token(或用環境變數 GITLAB_TOKEN) |
-h, --host |
GitLab URL(預設 https://gitlab.com) |
-d, --days |
分析最近 N 天(預設 30) |
--since |
開始日期(YYYY-MM-DD) |
--until |
結束日期(YYYY-MM-DD) |
-l, --limit |
限制 MR 數量(預設 100) |
-o, --oversized |
顯示過大 MR 清單 |
--trend |
顯示月度趨勢 |
-j, --json |
JSON 格式輸出 |
-v, --verbose |
詳細輸出 |
gitlab-mr mr-size -p your-team/your-project═══════════════════════════════════════════════════════════════════════════════
MR 規模分析(最近 30 天)
═══════════════════════════════════════════════════════════════════════════════
規模分佈
────────────────────────────────────────────────────────────────────────────────
XS (1-10 行): 12 (27%) ████████████
S (11-50 行): 18 (40%) ██████████████████
M (51-200 行): 10 (22%) ██████████
L (201-500 行): 4 (9%) ████
XL (500+ 行): 1 (2%) █
健康度評估
────────────────────────────────────────────────────────────────────────────────
小型 MR 比例 (XS+S): 67% ✓
建議: 維持 70% 以上為健康
gitlab-mr mr-size -p your-team/your-project --oversized額外顯示:
過大 MR 清單(L + XL)
────────────────────────────────────────────────────────────────────────────────
┌──────┬────────────────────────┬──────────┬────────┬─────────┐
│ MR │ 標題 │ 作者 │ 規模 │ 行數 │
├──────┼────────────────────────┼──────────┼────────┼─────────┤
│ 120 │ Refactor entire module │ dev1 │ XL │ 850 │
│ 118 │ Add new feature set │ dev2 │ L │ 420 │
│ 115 │ Database migration │ dev1 │ L │ 380 │
│ 112 │ UI component library │ dev3 │ L │ 290 │
│ 108 │ API restructure │ dev2 │ L │ 250 │
└──────┴────────────────────────┴──────────┴────────┴─────────┘
⚠️ 建議:大型 MR 應拆分為多個小型 MR,降低審查難度
gitlab-mr mr-size -p your-team/your-project --trend額外顯示:
月度規模趨勢
────────────────────────────────────────────────────────────────────────────────
月份 MR 數 小型比例 平均行數 變化
2025-09 42 58% 145 -
2025-10 38 62% 120 ↓ 改善
2025-11 35 67% 95 ↓ 改善
趨勢分析: 小型 MR 比例持續提升 ✓
gitlab-mr mr-size -p your-team/your-project --verbose額外顯示:
詳細統計
────────────────────────────────────────────────────────────────────────────────
總 MR 數: 45
總變更行數: 4,520
平均行數: 100.4
中位數行數: 65
最大行數: 850 (MR #120)
最小行數: 3 (MR #142)
按作者分佈:
dev1: 平均 85 行 (12 MRs)
dev2: 平均 145 行 (10 MRs) ⚠️ 偏大
dev3: 平均 62 行 (8 MRs)
| 參數 | 輸出內容 |
|---|---|
| (預設) | 規模分佈 + 健康度評估 |
--oversized |
+ 過大 MR 清單(L + XL) |
--trend |
+ 月度趨勢變化 |
--verbose |
+ 詳細統計 + 按作者分佈 |
--json |
JSON 格式(適合自動化) |
| 規模 | 變更行數 |
|---|---|
| XS | 1-10 行 |
| S | 11-50 行 |
| M | 51-200 行 |
| L | 201-500 行 |
| XL | 500+ 行 |