finishing-a-development-branch

Solid

当实现完成、所有测试通过、需要决定如何集成工作时使用——通过提供合并、PR 或清理等结构化选项来引导开发工作的收尾

AI & Automation 4,380 stars 425 forks Updated 1 weeks ago MIT

Install

View on GitHub

Quality Score: 91/100

Stars 20%
100
Recency 20%
90
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# 完成开发分支 ## 概述 通过提供清晰的选项并执行所选工作流来引导开发工作的收尾。 **核心原则:** 验证测试 → 展示选项 → 执行选择 → 清理。 **开始时宣布:** "我正在使用 finishing-a-development-branch 技能来完成这项工作。" ## 流程 ### 步骤 1:验证测试 **在展示选项之前,验证测试通过:** ```bash # 运行项目的测试套件 npm test / cargo test / pytest / go test ./... ``` **如果测试失败:** ``` 测试失败(<N> 个失败)。必须先修复才能继续: [显示失败信息] 在测试通过之前无法进行合并/PR。 ``` 停止。不要继续到步骤 2。 **如果测试通过:** 继续步骤 2。 ### 步骤 2:确定基础分支 ```bash # 尝试常见的基础分支 git merge-base HEAD main 2>/dev/null || git merge-base HEAD master 2>/dev/null ``` 或者询问:"这个分支是从 main 分出来的——对吗?" ### 步骤 3:展示选项 展示以下 4 个选项: ``` 实现已完成。你想怎么做? 1. 在本地合并回 <base-branch> 2. 推送并创建 Pull Request 3. 保持分支现状(我稍后处理) 4. 丢弃这项工作 选哪个? ``` **不要添加解释** - 保持选项简洁。 ### 步骤 4:执行选择 #### 选项 1:本地合并 ```bash # 切换到基础分支 git checkout <base-branch> # 拉取最新代码 git pull # 合并功能分支 git merge <feature-branch> # 在合并结果上验证测试 <test command> # 如果测试通过 git branch -d <feature-branch> ``` 然后:清理工作树(步骤 5) #### 选项 2:推送并创建 PR ```bash # 推送分支 git push -u origin <feature-branch> # 创建 PR gh pr create --title "<title>" --body "$(cat <<'EOF' ## 摘要 <2-3 条变更要点> ## 测试计划 - [ ] <验证步骤> EOF )" ``` 然后:清理工作树(步骤 5) #### 选项 3:保持现状 报告:"保留分支 <name>。工作树保留在 <path>。" **不要清理工作树。** #### 选项 4:丢弃 **先确认:** ``` 这将永久删除: - 分支 <name> - 所有提交:<commit-list> - 工作树 <path> 输入 'discard' 确认。 ``` 等待精确的确认。 确认后: ```bash git checkout <base-branch> git branch -D <feature-branch> ``` 然后:清理工作树(步骤 5) ### 步骤 5:清理工作树 **对于选项 1、2、4:** 检查是否在工作树中: ```bash git worktree list | grep $(git branch --show-current) ``` 如果是: ```bash git workt...

Details

Author
jnMetaCode
Repository
jnMetaCode/superpowers-zh
Created
2 months ago
Last Updated
1 weeks ago
Language
Shell
License
MIT

Integrates with

Similar Skills

Semantically similar based on skill content — not just same category