关于 create-branch
按 Sentry 命名规范创建 Git 分支的 Claude Code 技能。它根据参数或本地改动提炼描述,无需交互选择基分支,并避免分支名称冲突。
主要功能
- 01提炼分支描述
- 02判断改动类型
- 03使用 kebab-case 分支名
- 04自动选择基分支
- 05避免本地和远程重名
适用场景
- 01为指定任务创建分支
- 02根据未提交改动命名分支
- 03无需交互提示即可开始工作
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ getsentry/ skills --skill create-branch安装后在 Claude Code 中输入/create-branch确认已加载。
详细介绍
创建分支
按照 Sentry 命名约定创建 git 分支。 除非用户明确要求手动选择名称,否则此工作流应保持非交互。
工作流
-
确定工作描述:
- 如果存在
$ARGUMENTS,则使用它 - 否则检查:
git diff git diff --cached git status --short - 如果存在本地更改,则从差异中提炼简短描述
- 如果没有本地更改,则使用通用描述,例如
repo-maintenance、tooling-update或work-in-progress
- 如果存在
-
对分支类型进行分类:
| 类型 | 适用场景 |
|---|---|
feat | 新功能 |
fix | 修复原本无法正常工作的行为 |
ref | 行为保持不变,调整结构 |
chore | 维护现有工具/配置 |
perf | 行为相同,但速度更快 |
style | 仅涉及视觉效果或格式 |
docs | 仅涉及文档 |
test | 仅涉及测试 |
ci | CI/CD 配置 |
build | 构建系统 |
meta | 仓库元数据 |
license | 许可证变更 |
不确定时:新功能使用 feat,重构使用 ref,维护工作使用 chore。
-
生成
<type>/<short-description>。<short-description>使用 kebab-case,仅包含 ASCII 字符,最好由 3 到 6 个单词组成。 -
不经提示选择基准分支:
git branch --show-current git remote | grep -qx origin && echo origin || git remote | head -1 git symbolic-ref refs/remotes/<remote>/HEAD 2>/dev/null | sed 's|refs/remotes/<remote>/||' | tr -d '[:space:]'- 如果无法检测默认分支,则依次回退到
main、master,最后使用当前分支 - 如果处于分离 HEAD 状态,则从当前提交创建分支
- 如果当前已处于非默认分支,则从当前分支创建分支
- 仅当用户明确要求时,才切换到默认分支
- 如果无法检测默认分支,则依次回退到
-
通过依次追加
-2、-3等后缀来避免冲突,直到该名称在本地和远程都未被使用。 -
创建分支:
git checkout -b <branch-name>报告最终分支名称,但不要等待确认。
参考资料
评论
支持 Markdown