ohmyzsh/plugins/git-commit
2024-02-23 11:12:46 -03:00
..
git-commit.plugin.zsh fix: expected unary operator 2024-02-23 11:12:46 -03:00
README.md docs: added description conventional commits 2024-02-22 07:03:26 -03:00

git-commit plugin

The git-commit plugin adds several git aliases for conventional commit messages.

To use it, add git-commit to the plugins array in your zshrc file:

plugins=(... git-commit)

Syntax

git <type> [(-s, --scope) "<scope>"] "<message>"
git <type> [(-a, --attention)] "<message>"
git <type> [(-s, --scope) "<scope>"] [(-a, --attention)] "<message>"
git <type> [(-sa, -as)] "<scope>" "<message>" "<message>"

⚠️ Single/Double quotes around the scope and message are required

Where type is one of the following:

  • build
  • chore
  • ci
  • docs
  • feat
  • fix
  • perf
  • refactor
  • rev
  • style
  • test
  • wip

NOTE: the alias for revert type is rev, as otherwise it conflicts with the git command of the same name. It will still generate a commit message in the format revert: <message>

Examples

Git alias Command
git style "remove trailing whitespace" git commit -m "style: remove trailing whitespace"
git wip -a "work in progress" git commit -m "wip!: work in progress"
git fix -s "router" "correct redirect link" git commit -m "fix(router): correct redirect link"
git rev -a -s "api" "rollback v2" git commit -m "revert(api)!: rollback v2"

Conventional Commits List

Type Name Description
build Builds Change that affect the build system or external dependencies (exemple scopes: composer and/or npm)
chore Chores Other changes that don't modify src or test files
ci Continuous Integrations Changes to our CI configuration files and scripts
docs Documantation Documentation onyl changes
feat Features A new feature
fix Bug Fixes A bug fix
perf Performance Improvements A code change that improves performance
refactor Code Refactoring A code change tha neither fixes a bug nor adds a feature
rev Reverts Reverts a previous commit
style Styles Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
test Tests Adding missing tests or correcting existing tests

Extras

Type Name Description
wip Work In Progress Denote commits that are still in progress and not ready for integration or review