[ PROMPT_NODE_28164 ]
Git 一键提交与 PR 自动化 (Yeet)
[ SKILL_DOCUMENTATION ]
## 前置要求
- 需要 GitHub CLI `gh`。检查 `gh --version`。如果缺失,请要求用户安装 `gh` 并停止。
- 需要已验证的 `gh` 会话。运行 `gh auth status`。如果未验证,请要求用户在继续之前运行 `gh auth login`(并重新运行 `gh auth status`)。
## 命名规范
- 分支:从 main/master/default 开始时,使用 `codex/{description}`。
- 提交:`{description}`(简洁)。
- PR 标题:`[codex] {description}`,总结完整的差异。
## 工作流
- 如果在 main/master/default 分支上,创建分支:`git checkout -b "codex/{description}"`
- 否则留在当前分支。
- 确认状态,然后暂存所有内容:`git status -sb` 然后 `git add -A`。
- 使用描述简洁地提交:`git commit -m "{description}"`
- 如果尚未运行检查,请运行检查。如果由于缺少依赖/工具导致检查失败,请安装依赖并重试一次。
- 带有跟踪地推送:`git push -u origin $(git branch --show-current)`
- 如果 git push 由于工作流验证错误而失败,从 master 拉取并重试推送。
- 打开一个 PR 并编辑标题/正文以反映描述和增量:`GH_PROMPT_DISABLED=1 GIT_TERMINAL_PROMPT=0 gh pr create --draft --fill --head $(git branch --show-current)`
- 将 PR 描述写入具有真实换行符的临时文件(例如 pr-body.md ... EOF)并运行 pr-body.md 以避免 n 转义的 markdown。
- PR 描述(markdown)必须是详细的散文,涵盖问题、对用户的原因和影响、根本原因、修复方案以及任何用于验证的测试或检查。