Git分支名校验工具,规范项目的分支命令。
validate-branch-name 可通过命令行直接使用。当结合 Husky一起使用时,请确保Husky的版本 >= v1.0.0.
# 项目本地安装
$ npm i validate-branch-name -D
# 全局安装
$ npm i validate-branch-name -g
命令行方式使用
npx validate-branch-name
# 测试目标分支名
npx validate-branch-name -t test/branch/name
# 定义用于校验分支名的正则表达式
npx validate-branch-name -r regexp -t test/branch/name
# 通过 -h 获取更多帮助信息
npx validate-branch-name -h
结合husky使用
方式一:在根目录下的package.json文件中,配置husky及validate-branch-name。
// {app_root}/package.json
{
"husky": {
"hooks": {
"pre-commit": "npx validate-branch-name"
}
},
"validate-branch-name": {
"pattern": "^(master|main|develop){1}$|^(feature|fix|hotfix|release)\/.+$",
"errorMsg": "自定义的错误信息"
}
}
方式二:在.husky
目录下增加pre-commit ,配合husky git钩子来校验分支名。
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
# valite branch name before commit
npx validate-branch-name
我们已经为您添加了默认的配置,但是您依然可以根据自己的喜好自定义校验规则和错误信息。
默认的校验规则: ^(master|main|develop){1}$ |^(feature|fix|hotfix|release)/.+$
例子: 分支名feature/test/pattern-test
将会通过校验 .
可选择的校验规则:
- ^(feature|fix|hotfix|release)/.+ -- 分支名应该以 feature/, fix/, release/ 或 hotfix/ 开始
- (feature|release|hotfix)/(JIRA-\d+) -- 分支名应当例如 feature/JIRA-1234
-
(feature|release|hotfix)/(JIRA-\d+/)?[a-z-]+ -- 分支名应当例如 feature/branch-name 或者 feature/JIRA-1234/branch-name
-
自定义正则表达式,访问regex。
除了在package.json中定义,还能以文件 .validate-branch-namerc
,.validate-branch-namerc.json
,.validate-branch-namerc.yaml
,.validate-branch-namerc.yml
, .validate-branch-namerc.js
, .validate-branch-namerc.cjs
,
validate-branch-name.config.js
或 validate-branch-name.config.cjs
的形式配置validate-branch-name。
请通过issue进行提问。