Skip to main content

A commitizen plugin that combines gitmoji and conventional.

Reason this release was yanked:

broken plugin resolution

Project description

cz-conventional-gitmoji

A commitizen plugin that combines gitmoji and conventional commits.

Installation

With pip or any other package manager of your choice, the usual way:

pip install cz-conventional-gitmoji

Usage

This package can be used as a normal commitizen plugin, either by specifying the name on the command line

cz --name cz_gitmoji commit

or by setting it in your pyproject.toml

[tool.commitizen]
name = "cz_gitmoji"

This will make commitizen use the commit message parsing rules defined by this plugin, which are 100% compatible with conventional commits. As such, the gitmojis are completely optional and all commands will continue to validate commit messages in conventional format just fine. This is useful if you're transitioning an existing repo to cz-conventional-gitmoji or you work in a team in which some colleagues don't like gitmojis.

gitmojify

Apart from the conventional-gitmoji rules, this package provides the gitmojify command which is also available as a pre-commit hook. The command reads a commit message either from cli or a commit message file and prepends the correct gitmoji based on the type. If the message already has a gitmoji, it is returned as is.

$ gitmojify -m "init: initial version"
🎉 init: initial version

To use it as a pre-commit hook, install this packages as well as commitizen and put the following into your .pre-commit-config.yaml

repos:
  - repo: https://github.com/ljnsn/cz-conventional-gitmoji
    rev: 0.2.4
    hooks:
      - id: conventional-gitmoji

Make sure to install the relevant pre-commit hooks with

To use commitizen hooks with conventional-gitmoji, you need to add the package as an extra dependency.

  - repo: https://github.com/commitizen-tools/commitizen
    rev: v3.29.0
    hooks:
      - id: commitizen
        additional_dependencies: [cz-conventional-gitmoji]
pre-commit install --install-hooks

Commit with a message in conventional format that contains a valid type mapped by conventional gitmoji and the gitmoji will automagically be added.

Features

  • Enable conventional gitmoji commit messages via cz commit.
  • Add hook to automatically prepend the appropriate gitmoji for the commit's type.
  • Add --simple-emojis option to use only the emojis relating to cz_conventional_commits types.
  • Add --simple-types option to use only the types used by cz_conventional_commits.
  • Add --conventional option to put the emoji in the commit message, making it compatible with cz_conventional_commits.

Inspiration

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cz_conventional_gitmoji-0.4.3.tar.gz (12.2 kB view details)

Uploaded Source

Built Distribution

cz_conventional_gitmoji-0.4.3-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

Details for the file cz_conventional_gitmoji-0.4.3.tar.gz.

File metadata

File hashes

Hashes for cz_conventional_gitmoji-0.4.3.tar.gz
Algorithm Hash digest
SHA256 d1cb685a60b59053e361a9c177d424c261b528d7d31f255e50b315a461bdfab7
MD5 16bb151d7e924b15551be50b276f9082
BLAKE2b-256 0e2a6485b397b73ef335d45d06a9b3f1b16eb630b7a4b0c18975972dbadf4547

See more details on using hashes here.

File details

Details for the file cz_conventional_gitmoji-0.4.3-py3-none-any.whl.

File metadata

File hashes

Hashes for cz_conventional_gitmoji-0.4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1d5703d7bbfb010cf9ac4b0f98721fdfce326cdb41c58067f90c9806919b3b40
MD5 dcb34ee0e8d554b3371ec52277194cb6
BLAKE2b-256 b94c2d0485478cb2c53a8bf4273a9dacc3da81fe8f7d1b26d168812f13994597

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page