gitlink-cli/skills/gitlink-contributor-insight/examples/jiangtx-gitlink-cli.md

6.2 KiB
Raw Blame History

执行样例jiangtx/gitlink-cli 贡献者活跃度分析

执行日期2026-06-03 执行版本gitlink-cli (当前版本) 说明:本文件记录了一次完整的贡献者分析执行过程,包含实际命令输出和最终报告。可作为后续分析的参考模板。


实际执行的命令与输出

{
  "ok": true,
  "data": {
    "author": { "id": 148911, "login": "jiangtx", "name": "jiangtx" },
    "clone_url": "https://gitlink.org.cn/jiangtx/gitlink-cli.git",
    "contributor_users_count": 2,
    "default_branch": "master",
    "fork_info": {
      "fork_form_name": "gitlink-cli",
      "fork_project_identifier": "gitlink-cli",
      "fork_project_user_login": "Gitlink",
      "fork_project_user_name": "GitLink"
    },
    "forked_from_project_id": 1513956,
    "full_name": "jiangtx/gitlink-cli",
    "identifier": "gitlink-cli",
    "issues_count": 0,
    "permission": "Manager",
    "private": false,
    "project_id": 1547588,
    "pull_requests_count": 9,
    "size": "13.4 MB",
    "watchers_count": 0
  }
}

9 个 PR全部已合并。按作者汇总

author_login PR 数 PR 编号 时间范围
lindiwen23 5 #1, #6, #7, #8, #9 2026-06-0106-03
jiangtx 4 #2, #3, #4, #5 2026-06-0206-03

PR 详细列表:

// lindiwen23 的 PR
{ "pull_request_number": 1, "author_login": "lindiwen23",
  "name": "feat: 新增 3 个 Skillonboarding / issue-triage / research-tracker",
  "pr_full_time": "2026-06-01T11:33:00.000+08:00", "pull_request_status": 1,
  "journals_count": 3 }

{ "pull_request_number": 6, "author_login": "lindiwen23",
  "name": "fix: detectHTMLResponse 跳过 XML 声明,添加 HTML 响应检测",
  "pr_full_time": "2026-06-03T08:55:10.000+08:00", "pull_request_status": 1,
  "journals_count": 2 }

{ "pull_request_number": 7, "author_login": "lindiwen23",
  "name": "feat: org +teams/+create-team/+remove-user, search +code/+issues",
  "pr_full_time": "2026-06-03T09:13:15.000+08:00", "pull_request_status": 1,
  "journals_count": 2 }

{ "pull_request_number": 8, "author_login": "lindiwen23",
  "name": "feat: 新建 notification 模块并注册",
  "pr_full_time": "2026-06-03T09:17:32.000+08:00", "pull_request_status": 1,
  "journals_count": 2 }

{ "pull_request_number": 9, "author_login": "lindiwen23",
  "name": "fix: Skills 文件 api 命令替换为 Shortcut 命令 (~107 处)",
  "pr_full_time": "2026-06-03T09:38:05.000+08:00", "pull_request_status": 1,
  "journals_count": 2 }

// jiangtx 的 PR
{ "pull_request_number": 2, "author_login": "jiangtx",
  "name": "基础设施修复",
  "pr_full_time": "2026-06-02T16:54:43.000+08:00", "pull_request_status": 1,
  "journals_count": 2 }

{ "pull_request_number": 3, "author_login": "jiangtx",
  "name": "repo 域补全",
  "pr_full_time": "2026-06-02T23:27:46.000+08:00", "pull_request_status": 1,
  "journals_count": 2 }

{ "pull_request_number": 4, "author_login": "jiangtx",
  "name": "pr 域补全",
  "pr_full_time": "2026-06-03T00:09:46.000+08:00", "pull_request_status": 1,
  "journals_count": 2 }

{ "pull_request_number": 5, "author_login": "jiangtx",
  "name": "label 模块新建",
  "pr_full_time": "2026-06-03T00:25:32.000+08:00", "pull_request_status": 1,
  "journals_count": 2 }
{
  "ok": true,
  "data": {
    "login": "jiangtx", "name": "jiangtx",
    "user_id": 148911,
    "created_time": "2026-04-28 11:46",
    "user_projects_count": 3,
    "user_org_count": 0,
    "user_identity": "专业人士"
  }
}
{
  "ok": true,
  "data": {
    "login": "lindiwen23", "name": "lindiwen23",
    "user_id": 141609,
    "created_time": "2025-05-26 22:40",
    "user_projects_count": 6,
    "user_org_count": 1,
    "user_identity": "专业人士"
  }
}

5. 不可用的命令

命令 结果
gitlink-cli repo +contributors 命令不存在,返回 repo 帮助文本
gitlink-cli user +heatmap 命令不存在user 仅 +info / +me
gitlink-cli user +stats 命令不存在
gitlink-cli user +trends 命令不存在
gitlink-cli api GET "/api/v1/repos/.../contributors" 返回 HTML 页面,非 JSON
gitlink-cli api GET "/api/v1/users/.../heatmap" 返回 HTML 页面,非 JSON

数据处理过程

贡献者发现

由于 repo +contributors 不可用:

  1. repo +info 获取 contributor_users_count = 2
  2. pr +list 提取唯一 author_login["lindiwen23", "jiangtx"]2 人,一致)

活跃天数计算

从 PR 的 pr_full_time 字段提取日期:

贡献者 活跃日期 活跃天数
lindiwen23 2026-06-01, 2026-06-03 2 天
jiangtx 2026-06-02, 2026-06-03 2 天

趋势判断

按日聚合 PR 数:

  • 06-01: 1 PR
  • 06-02: 2 PRs
  • 06-03: 6 PRs

趋势:↑ 上升日产出加速1→2→6

贡献类型分类

贡献者 PR 数 Issue 数 类型
lindiwen23 5 0 代码贡献者
jiangtx 4 0 代码贡献者

Issue 来源:repo +infoissues_count = 0,无 Issue 需要获取。

分级调整

由于项目仅 3 天历史(< 30 天),适用年轻项目特殊处理:

  • jiangtxPR=42 活跃天)→ 🔥 核心贡献者
  • lindiwen23PR=52 活跃天)→ 🔥 核心贡献者

完整输出报告

(见当天执行输出,此处省略以保持文件精简。核心结构:团队概览 → 排行榜 → 个人分析 → 健康度评估 → 建议。)


经验总结

  1. PR 数据可作为贡献者分析的主要数据源pr +list 提供了作者、时间、状态、标题等丰富信息
  2. pr_full_time 字段足够做时间分布分析:可计算活跃天数、贡献频率、趋势
  3. user +info 补充贡献者画像:注册时间、项目数、组织数可用于背景分析
  4. 极端年轻项目的分级需放宽标准分级PR > 10对 3 天项目不适用
  5. Raw API 不可靠GitLink 的 API 结构与标准 Gitea 不同,建议仅使用 Shortcut 命令