commitlint_cli 0.4.0-pre.0 commitlint_cli: ^0.4.0-pre.0 copied to clipboard
Commitlint lint commit messages to satisfy conventional commit format
commitlint #
Dart version commitlint - A tool to lint commit messages. (Inspired by JavaScript commitlint) Dart version commitlint cli (known in JavaScript comunity)
commitlint lint commit messages to satisfy conventional commit format
commitlint helps your team adhere to a commit convention. By supporting pub-installed configurations it makes sharing of commit conventions easy.
About Package Name #
Because a package commit_lint
already exists (not in active development), the name commitlint
can't be used according to Pub's naming policy. So commitlint_cli
is used currently.
Getting started #
Install #
Add commitlint_cli
to your dev_dependencies
in pubspec.yaml
# Install commitlint_cli
dart pub add --dev commitlint_cli
Configuration #
# Configure commitlint to use conventional config
echo "include: package:commitlint_cli/commitlint.yaml" > commitlint.yaml
Test #
# Lint from stdin
echo 'foo: bar' | dart run commitlint_cli
⧗ input: type: add docs
✖ type must be one of [build, chore, ci, docs, feat, fix, perf, refactor, revert, style, test] type-enum
✖ found 1 errors, 0 warnings
Note: output on successful commit will be omitted, you can use the VERBOSE=true
env to get positive output. (Functionality of verbose)
# Output on successful commit will be omitted
echo 'feat: test message' | dart run commitlint_cli
# Verbse Output on successful commit
echo 'feat: test message' | VERBOSE=true dart run commitlint_cli
Setup git hook #
With husky (a tool for managing git hooks), commitlint cli can be used in commmit-msg
git hook
Set commit-msg
hook: #
dart pub add --dev husky
dart run husky install
dart run husky set .husky/commit-msg 'dart run commitlint_cli --edit "$1"'
Make a commit: #
git add .
git commit -m "Keep calm and commit"
# `dart run commitlint_cli --edit "$1"` will run
To get the most out of
commitlint
you'll want to automate it in your project lifecycle. See our Setup guide for next steps.
Documentation #
See documention
- Guides - Common use cases explained in a step-by-step pace
- Concepts - Overarching topics important to understand the use of
commitlint
- Reference - Mostly technical documentation