Skip to content

Latest commit

 

History

History
123 lines (80 loc) · 4.01 KB

README.zh-CN.md

File metadata and controls

123 lines (80 loc) · 4.01 KB

validate-branch-name

GitHub license npm version Build Status codecov PRs Welcome Known Vulnerabilities npm download npm

English Document

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.cjsvalidate-branch-name.config.jsvalidate-branch-name.config.cjs的形式配置validate-branch-name。

疑问及建议

请通过issue进行提问。

证书

MIT