JSPM

commitlint-plugin-shr-jira

1.0.6
    • ESM via JSPM
    • ES Module Entrypoint
    • Export Map
    • Keywords
    • License
    • Repository URL
    • TypeScript Types
    • README
    • Created
    • Published
    • Downloads 1567
    • Score
      100M100P100Q123328F
    • License MIT

    A plugin that implement all jira commits messages style rules and validate commit messages

    Package Exports

    • commitlint-plugin-shr-jira
    • commitlint-plugin-shr-jira/build/index.js

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (commitlint-plugin-shr-jira) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    commitlint-plugin-shr-jira

    A plugin that implement all jira commits messages style rules and validate commit messages. Part of commitlint-plugin monorepo.

    For Tips and Advanced Usage you can read this Blog Post

    Getting started.

    Install dependencies
    npm install --save-dev @commitlint/cli commitlint-config-jira-jquery commitlint-plugin-shr-jira
    • commitlint-config-jira-jquery - is a recomended config who contain preconfigured rules for jira commits messages style. See all rules in description below
    • commitlint-plugin-shr-jira - is a plugin that implement all jira commits messages style rules and validate commit messages
    Configure commitlint to use jira commits messages style config
    // commitlint.config.js || commitlintrc.js
    module.exports = {
      plugins: ['commitlint-plugin-shr-jira'],
      extends: ['jira-jquery'],
    }
    To lint commits before they are created you can use Husky's 'commit-msg' hook
    // package.json
    {
      "husky": {
        "hooks": {
          "commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
        }
      }
    }

    Rules

    // You must follow this rule
    <type>[<scope>(optional)]: [<ticket-id>(uppercase-number)] <title>
    [optional body]
    [optional footer(s)]

    Notes: The attributes must be based on this below:

    • type: build, ci, docs, fix, feat, perf, refactor, style, test, chore
    • scope: fatal, major, minor, ui, http, compiler, etc.
    • ticket_id: Jira’s ticket ID
    • title: meaningful, imperative mood, 60-character long, no capitalization, no ending dot (.)

    Examples

    // ❌ Bad commit messages
    git commit -m"My commit message body"
    git commit -m":My commit message body"
    git commit -m"feat: My commit message body"
    git commit -m"feat: [Va-123] my commit message body"
    git commit -m"feat: [VA-123h] my commit message body"
    git commit -m"feat: [VA-123] my commit message body."
    // ✅ Good commit messages
    git commit -m"feat[major]: [SHRA-3331] add the commitlint plugin"
    git commit -m"feat: [SHRA-3331] add the commitlint plugin"