Skip to content
git-blame logo

代码追溯专家

git-blame

代码追溯专家 - 查找代码修改者、关联PR、获取改动背景。 触发词: 谁改的, 谁写的, blame, 追溯, 找作者, 这行代码, 提交记录, 谁提交的, PR, 代码历史

SKILL.md

Full skill instructions

代码追溯专家

帮助定位代码修改者,获取改动背景,便于协作解决问题


执行声明规范

开始执行时

🔍 **正在执行: 代码追溯** (`#git-blame`)

✅ 已加载 Skill 指引
⭕ 当前步骤: 识别追溯目标

执行完成时

✅ **执行完成**: 代码追溯

参考来源:
- Skill: `#git-blame`
- 数据来源: [本地 Git / MCP DevOps]

产出物: 代码追溯报告

适用场景

  • Debug 时需要找到问题代码的作者
  • 想了解某段代码为什么这样写
  • 需要找到相关 PR 查看讨论上下文
  • 想知道某个文件最近被谁修改过

工作流程

步骤1: 识别追溯目标
   ↓
步骤2: 执行代码追溯
   ↓
步骤3: 获取关联 PR
   ↓
步骤4: 输出追溯报告

执行步骤

步骤1: 识别追溯目标

目标: 确定要追溯的代码位置

识别信息:

  • 文件路径
  • 行号范围(可选)
  • 代码片段(可选)

判断代码位置:

情况处理方式
工作区内的文件使用本地 git blame
远程仓库文件使用 mcp_azuredevops_list_commits
用户提供代码片段先搜索定位,再追溯

步骤2: 执行代码追溯

方式A: 本地 Git(工作区代码)
# 查看某行的提交信息
git blame -L <起始行>,<结束行> <文件路径>

# 查看提交详情
git show <commit-hash> --stat

# 查看提交的完整信息
git log -1 --format="%H%n%an%n%ae%n%s%n%b" <commit-hash>
方式B: MCP DevOps(远程仓库)
调用: mcp_azuredevops_list_commits
参数:
  - repositoryId: 仓库名称
  - branchName: 分支名
  - top: 返回数量

从返回结果提取:

  • author.name - 作者姓名
  • author.email - 作者邮箱
  • comment - 提交信息(含 PR 号)
  • files[].path - 修改的文件
  • files[].patch - 具体改动

步骤3: 获取关联 PR

从 commit message 提取 PR 号:

常见格式:

  • 已合并 PR 236436: ...
  • Merged PR 236436: ...
  • (#236436)

获取 PR 详情:

调用: mcp_azuredevops_get_pull_request_comments
参数:
  - repositoryId: 仓库名
  - pullRequestId: PR 号

步骤4: 输出追溯报告

使用以下模板输出结果:


输出模板

## 🔍 代码追溯报告

### 📍 追溯目标
- **文件**: `path/​to/​file.cs`
- **行号**: L100-L110
- **代码片段**: [如有]

### 👤 修改者信息
| 字段 | 值 |
|------|-----|
| 作者 | [姓名] |
| 邮箱 | [email] |
| 时间 | [日期] |
| Commit | [hash 前8位] |

### 🔗 关联 PR
- **PR #[号码]**: [标题]
- **链接**: [DevOps 链接]

### 📝 改动说明
[commit message 或 PR 描述]

### 💬 PR 讨论摘要
[如果有评论]

### 📌 后续建议
- 联系 **[作者]** 了解改动背景
- 查看 PR 中的测试用例
- [其他建议]

常用命令速查

场景命令
查看某行作者git blame -L 100,110 file.cs
查看文件历史git log --oneline -10 -- file.cs
查看提交详情git show <hash>
查找包含关键词的提交git log --grep="关键词" --oneline
查看某人的提交git log --author="姓名" --oneline

相关 Skill

Skill用途
#expert-index需要找对应模块专家时

注意事项

  1. 隐私: 仅展示工作相关信息,不泄露个人隐私
  2. 沟通: 找到作者后,建议先了解背景再提问
  3. 上下文: 关注 PR 讨论,可能有重要决策记录