Noisy Pillaging Monster

    validate-branch-name

    1.3.0 • Public • Published

    validate-branch-name

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

    中文文档

    Git branch name validator.

    Description

    validate-branch-name can be used through command line directly. When using with Husky, you should make sure husky version >= v1.0.0.

    Install

    # local install
    $ npm i validate-branch-name -D
    
    # global install
    $ npm i validate-branch-name -g
    

    Usage

    Use through command line

    npx validate-branch-name
    
    # test target branch name
    npx validate-branch-name -t test/branch/name
    
    # define regexp to test branch name
    npx validate-branch-name -r regexp -t test/branch/name
    
    # use -h for more usage detail
    npx validate-branch-name -h
    

    Use with husky

    First way:

    Configure hooks and pattern using package.json.

    // {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": "your own error message"
      }
    }

    Second way:

    Define pre-commit file under .husky direcotory.

    #!/bin/sh
    . "$(dirname "$0")/_/husky.sh"
    
    # validate branch name before commit
    
    npx validate-branch-name 
    

    We have set pattern and errorMsg by default, but you can still defined them as you like.

    Default pattern: ^(master|main|develop){1}$|^(feature|fix|hotfix|release)/.+$

    Example: feature/test/pattern-test would be passed.

    Avaliable patterns:

    • ^(feature|fix|hotfix|release)/.+ - branch has to start with feature/, fix/, release/ or hotfix/
    • (feature|release|hotfix)/(JIRA-\d+) - it should look like feature/JIRA-1234
    • (feature|release|hotfix)/(JIRA-\d+/)?[a-z-]+ - it should look like feature/branch-name or include JIRA's code like feature/JIRA-1234/branch-name

    • custom patterns, visit regex.

    You can also use .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 or validate-branch-name.config.cjs file to define config.

    Questions & Suggestions

    Please open an issue here.

    License

    MIT

    Install

    npm i validate-branch-name

    DownloadsWeekly Downloads

    12,651

    Version

    1.3.0

    License

    MIT

    Unpacked Size

    23.1 kB

    Total Files

    11

    Last publish

    Collaborators

    • jsonma