SuperAPI AI 工具集

create-pr

测试与质量

查看项目

更新于 10-16 05:48

技能介绍

用途:按 Sentry 工程实践创建 Pull Request,并在创建前检查分支状态、分析改动、撰写 PR 描述。

前置条件:需要已认证且可用的 GitHub CLI(gh)。创建 PR 前必须确保所有改动已提交;若有未提交改动,先运行 sentry-skills:commit 技能提交。可用 git status --porcelain 检查未提交改动。

主要流程:

  1. 验证分支状态:用 gh repo view --json defaultBranchRef --jq '.defaultBranchRef.name' 获取默认分支,配合 git status 与 git log $BASE..HEAD --oneline 检查提交是否完整、分支是否与远程同步、是否需要 rebase。
  2. 分析改动:用 git log $BASE..HEAD 查看提交,用 git diff $BASE...HEAD 查看完整差异,写描述前先理解改动范围与目的。
  3. 撰写 PR 描述:包含改动内容、动机、考虑过的替代方案、评审者需要的补充上下文;不要写“测试计划”、测试步骤清单或对 diff 的冗余总结;应说明 what 与 why、关联 issue 或 ticket、代码不明显的上下文与需要重点评审的部分。
  4. 创建 PR:gh pr create --draft --title "<type>(<scope>): <description>" --body "$(cat <<'EOF' ... EOF)"。标题遵循提交约定,如 feat(scope):、fix(scope):、ref:。

issue 引用语法:Fixes #1234 合并时关闭 GitHub issue;Fixes SENTRY-1234 关闭 Sentry issue;Refs GH-1234 仅链接不关闭;Refs LINEAR-ABC-123 链接 Linear issue。

建议:一个 PR 对应一个功能或修复,不捆绑无关改动;保持 PR 可评审;讲清 why;早期用草稿 PR 获取反馈。

修改已有 PR:用 gh api -X PATCH repos/{owner}/{repo}/pulls/PR_NUMBER 更新标题或描述;资料指出 gh pr edit 因 GitHub Projects(classic)弃用而暂时不可用。

限制:技能依赖 GitHub CLI 与认证状态;不含具体价格、平台与效果信息,资料未提供。