ship-it

Code commit, PR creation, merge, and issue closure workflow via GitHub CLI (gh). Triggers after a goal (GitHub Issue) implementation is complete — commit code, push branch, create PR, merge, then close the issue. Use when the user says "提交代码", "commit and merge", "创建PR", "合入", "关闭issue", "ship-it",

By smallnest · 414 installs

npx skills add smallnest/goal-workflow --skill ship-it

Source repository · Upstream listing

After Goal: 代码提交、PR 合入、Issue 关闭工作流(GitHub) 完成 GitHub Issue 实现后的标准收尾流程:提交代码 → 推送分支 → 创建 PR → 合入 → 关闭 Issue。 前置条件 当前 git 仓库有已实现的代码变更 已知 Issue 编号(如 42 ) gh CLI 已登录( gh auth status 可验证) 工作流 Step 1: 提交代码 关键规则: commit message 中包含 issue number 以关联 Issue 只暂存当前 Issue 相关的文件,不要混入其他变更 Step 2: 推送分支 分支命名建议: feat/issue 42 short desc 或 fix/issue 42 short desc Step 3: 创建 PR 关键规则: PR body 中写 Closes N 或 Fixes N ,合入后 GitHub 自动关闭 Issue title 简洁,不超过 70 字符 Step 4: 合入 PR 参数说明: squash : 压缩为单个 commit 合入(推荐) rebase : rebase 合入 merge : 普通 merge commit delete branch : 合入后删除远程分支 Step 5: 添加实现总结评论 PR 合入 / Issue 关闭时,始终在 Issue 上添加实现总结评论,方便后续直接从 Issue 回溯设计决策与代码变更。 参考 note it 的四类结构组织总结内容: Design Decisions(设计决策) 、 Deviations(偏离) 、 Tradeoffs(权衡) 、 Open Questions(待确认) 。某一类无内容时写 None 并简要说明。 关键规则: 无论是 auto close 还是手动 close,都必须添加此评论 参考 note it 的四类结构(设计决策 / 偏离 / 权衡 / 待确认);某类无内容写 None 「实现亮点」提炼本次实现最值得关注的技术点(性能、设计、复用、测试等),无则写 None 核心变更从 PR body 的 Summary 部分提取,保持简洁(3 5 条 bullet) 附加 PR 编号和 commit hash,方便直接跳转 若已通过 /note it 生成 docs/issue XXXX.html ,可直接复用其四类内容,并在末尾附上该文件链接 Step 6: 手动关闭 Issue(仅当未自动关闭时) 如果 PR body 中已写 Closes N ,合入后 Issue 会自动关闭,跳过此步。否则手动关闭: 错误处理 场景 处理方式 gh pr checks 有失败项 查看失败原因,修复后追加 commit 推送 PR 有 merge conflict git fetch origin main && git rebase origin/main ,解决冲突后 force push gh pr merge 被 branch protection 阻止 确认 required reviews 已满足,或请 reviewer approve Issue 合入后未自动关闭 确认 PR body 包含 Closes N ,或执行 Step 6 手动 gh issue close 完整示例