piapia123
zh

git 分支名生成

网络

所有处理都在浏览器本地完成,数据不上传服务器

输入
把文件拖到这里可直接载入
输出

把一行 issue 标题变成规范的分支名,例如 `修复登录跳转错误` → `fix/123-xiu-fu-deng-lu-tiao-zhuan-cuo-wu`(中文自动转拼音),纯英文标题直接得到 `feat/add-dark-mode`。可选类型前缀(feat / fix / hotfix / chore / docs / refactor / test / style / perf / ci / build / revert / 无)、主体内分隔符(连字符或下划线)、issue 编号(可空)与编号位置(前缀之后或末尾)、以及整条分支名的长度上限。要点在两种分隔符分了层级:前缀与主体之间固定用 `/`,只有主体内部才用你选的那个 —— 所以下划线模式下得到的是 `feat/add_login`,而不是把斜杠也换掉的 `feat_add_login`。长度上限会把前缀与编号一起算进去,再让主体按词截断。全部在浏览器本地完成,标题不会上传。

功能

  • 类型前缀:feat / fix / hotfix / chore / docs / refactor / test / style / perf / ci / build / revert / 无
  • 分隔符可选连字符或下划线,只作用于主体内部
  • 前缀与主体之间固定用 `/` 分段,不会被分隔符选项改掉
  • 可带 issue 编号,位置可选「前缀之后」或「末尾」
  • 编号里的非数字字符自动去掉(`AB-123` → `123`)
  • 长度上限把前缀、编号一并算入,再按词截断主体
  • 中文标题自动转拼音,不留汉字
  • 一行一个标题,一批可以一起生成
  • 每条给出分支名与它的拆解(前缀 / 主体 / 编号)
  • 结果行可单独复制

使用方法

  1. 一行贴一个 issue 标题
  2. 选类型前缀与主体内分隔符
  3. 要带编号就填 issue 编号,并选编号位置
  4. 按需调整长度上限,点行末复制取走分支名

常见问题

为什么下划线模式下得到的是 `feat/add_login` 而不是 `feat_add_login`?
因为这两处的分隔符职责不同:前缀与主体之间是分段符,固定用 `/`(git 里 `/` 会体现为目录层级,是有意义的);只有主体内部的词间分隔才用连字符或下划线。把 `/` 也一起替换掉会得到完全不同的分支名,而那两者看起来都挺正常,容易混。
中文标题会变成什么?
会转成拼音,例如 `修复登录` → `xiu-fu-deng-lu`。这一步复用站内的 slug 能力(按需加载拼音词表),英文标题则不经过拼音、直接转小写与分词。
长度上限是怎么算的?
算的是整条分支名(含类型前缀与 issue 编号)的长度。工具先从上限里减去前缀与编号占用的位数,再把剩余的额度给主体,并按词边界截断 —— 而不是先把主体截短、拼完才发现整条又超了。
这些分支名会发送到服务器吗?
不会。生成全在浏览器本地完成,标题不会离开这台设备,也不查询任何接口。

相关工具