@comparto/git-c
v2.2.0
Published
Conventional git cli.
Readme
@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
git-c commit- interactive conventional commit cligit-c help- display help for git-c
Configuration
By default git-c comes ready to run out of the box.
This supports cosmiconfig, so you can customize with either a
gitckey 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 stuffbreakingChangeEmoji: '🧨'Closed Issue Emoji
fix: 🐛 resolved nasty bug
🏁 Closes: #123closedIssueEmoji: '🏁'Disable Emoji
Disable all emojis, overrides breakingChangeEmoji, closedIssueEmoji and emoji options
disableEmoji: falseDetails
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: 64Min Message Length
minMessageLength: 3Questions
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 #123scope 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
- testCommitlint
Will leverage Commitlint's configuration instead for options:
typescorrelates torules[type-enum][2]scopescorrelates torules[scope-enum][2]maxMessageLengthcorrelates torules[header-max-length][2]minMessageLengthcorrelates torules[header-min-length][2]
useCommitlintConfig: false