Agent Skills
返回列表
💻

gh-stack 原生 GitHub 叠加拉取请求管理

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/manage-native-github-stacked-pull-requests-with-gh-stack。

技能介绍

要解决什么问题

一次改动涉及多层逻辑时,单个 PR 往往变得过大:审阅者很难判断反馈针对的是接口层还是实现层,作者要么一次性合入全部内容,要么在已合入的代码上反复修补。原生 GitHub Stacked PRs 通过让上层分支依赖下层分支,使每一层 PR 都能独立审阅、独立合并。难点在于分支管理容易出错:层序混乱、基线漂移,PR 之间失去叠加关系。这个技能就是让编码代理自动完成这套流程。

它如何工作

核心能力是教会代理使用 gh stack CLI 管理一整个 PR 栈的生命周期:

  • 拆分改动层:把大型改动分解为多个聚焦的分支,每层只负责一件事,形成自下而上的依赖链。
  • 建层与入栈:在当前 HEAD 处创建新分支,将其加入栈顶并切换过去;未提供分支名时会提示输入。
  • 维持层序:只在栈顶分支上执行操作,保证分支层与栈结构始终一致。
  • 编号命名:支持 -n / --numbered 选项,配合 --prefix 生成自增编号分支名,便于识别层序。
  • 提交审阅链:推送叠加分支链,打开一组可独立审阅的原生 GitHub Stacked PR。

代理的典型流程:确认仓库已启用 Stacked PRs,按层规划改动,自底向上逐层建分支并提交,最后打开完整 PR 链等待审阅。

适用边界与注意点

  • 需要 GitHub CLI gh 2.0+,并安装 gh-stack 扩展。
  • 目标仓库必须启用 Stacked PRs 功能,否则无法建立叠加关系。
  • 代理需能在仓库内执行 Git 命令;本技能只负责栈的编排,不负责写代码本身。
  • Stacked PRs 依赖分支层保持 rebased,长期搁置的栈可能出现层间漂移。

使用场景

  • 一个功能包含接口定义、业务实现和测试三层改动,要在 GitHub 上建多个相互依赖的 PR 供分层审阅。
  • 大型重构需拆成小 PR 逐个合并,后续每层分支都要 rebase 到已合并的下层之上。
  • 团队已启用原生 Stacked PRs,希望生成带自增编号的分支名,便于一眼识别层序。
  • 编码代理一次改动涉及多文件多逻辑层,需要保持栈结构一致、避免分支基线漂移。

适合人员

  • 在大型代码库维护长期功能分支的后端工程师,希望大改动分层合入而非一次性全量合并。
  • 负责审阅组内多个 PR 的技术负责人,需要每个 PR 聚焦单一职责以便快速给出反馈。
  • 编写自动化编码代理的开发者,需要教会代理用 gh-stack 走完建层、入栈、提交 PR 链的流程。