2.2.0 โ€ข Published 3 years ago

@comparto/git-c v2.2.0

Weekly downloads
6
License
MIT
Repository
github
Last release
3 years ago

actions version downloads Code Coverage semantic-release code style: prettier

@comparto/git-c

Interactive conventional commits cli, inspired by git-cz with the ability to leverage commitlint configuration, configuration validation, versatile configuration through cosmiconfig and more

Usage

npx @comparto/git-c
$ npm install -g @comparto/git-c
$ git-c COMMAND
running command...
$ git-c (-v|--version|version)
@comparto/git-c/2.2.0 linux-x64 node-v14.15.1
$ git-c --help [COMMAND]
USAGE
  $ git-c COMMAND
...

Command Topics

Configuration

By default git-c comes ready to run out of the box.

This supports cosmiconfig, so you can customize with either a gitc key in your package.json, or just create a .gitcrc.json, .gitcrc.yml, gitc.config.js, etc. in your project directory.

Options

Breaking Change Emoji

feat: ๐ŸŽธ dope new feature

BREAKING CHANGE: ๐Ÿงจ breaks stuff
breakingChangeEmoji: '๐Ÿงจ'

Closed Issue Emoji

fix: ๐Ÿ› resolved nasty bug

๐Ÿ Closes: #123
closedIssueEmoji: '๐Ÿ'

Disable Emoji

Disable all emojis, overrides breakingChangeEmoji, closedIssueEmoji and emoji options

disableEmoji: false

Details

Allows you to further configure cli and git message output based on type. Default emojis follow standards set by gitmoji

details:
  chore:
    description: Other changes that don't modify src or test files
    emoji: '๐Ÿค–'
  ci:
    description: Changes to CI configuration files and scripts
    emoji: '๐Ÿ‘ท'
  docs:
    description: Add or update documentation.
    emoji: '๐Ÿ“'
  feat:
    description: A new feature
    emoji: '๐ŸŽธ'
  fix:
    description: Fix a bug.
    emoji: '๐Ÿ›'
  perf:
    description: Improve performance.
    emoji: 'โšก๏ธ'
  refactor:
    description: Refactor code.
    emoji: 'โ™ป๏ธ'
  release:
    description: Deploy stuff.
    emoji: '๐Ÿš€'
  revert:
    description: Revert changes.
    emoji: 'โช'
  style:
    description: Improve structure / format of the code.
    emoji: '๐ŸŽจ'
  test:
    description: Add or update tests.
    emoji: 'โœ…'

Max Message Length

maxMessageLength: 64

Min Message Length

minMessageLength: 3

Questions

Allows you to toggle questions.

questions:
  - type # Select the type of change that you're committing?
  - scope # Select the scope this component affects?
  - subject # Write a short, imperative description of the change?
  - body # Provide a longer description of the change?
  - breaking # List any breaking changes
  - issues # Issues this commit closes, e.g #123

scope question will not be turned if there's no scopes

Scopes

Allows you to provide list of scopes to choose from.

scopes: []

Will not be in effect if scope question is not turned on.

Types

Allows you to provide list of types to choose from. Can be further configured through Details.

types:
  - chore
  - docs
  - feat
  - fix
  - refactor
  - test

Commitlint

Will leverage Commitlint's configuration instead for options:

  • types correlates to rules[type-enum][2]
  • scopes correlates to rules[scope-enum][2]
  • maxMessageLength correlates to rules[header-max-length][2]
  • minMessageLength correlates to rules[header-min-length][2]
useCommitlintConfig: false