Skip to content

Latest commit

 

History

History
200 lines (133 loc) · 4.38 KB

File metadata and controls

200 lines (133 loc) · 4.38 KB

Third-Party Commitizen Templates

In addition to the native templates, some alternative commit format templates are available as PyPI packages (installable with pip).

A Commitizen plugin that leverages OpenAI's GPT-4o to automatically generate clear, concise, and conventional commit messages based on your staged git changes.

Installation

pip install cz-ai

Usage

cz --name cz_ai commit

Just like conventional commit format, but the scope has been restricted to a JIRA issue format, i.e. project-issueNumber. This standardises scopes in a meaningful way.

Installation

pip install conventional-JIRA

This plugin extends the Commitizen tools by:

  • requiring a JIRA issue ID in the commit message
  • creating links to GitHub commits in the CHANGELOG.md
  • creating links to JIRA issues in the CHANGELOG.md

Installation

pip install cz-github-jira-conventional

For installation instructions (configuration and pre-commit) please visit https://github.com/apheris/cz-github-jira-conventional

conventional commit format, but with emojis

Installation

pip install cz-emoji

Usage

cz --name cz_emoji commit

conventional commits, but with gitmojis.

Includes a pre-commit hook that automatically adds the correct gitmoji to the commit message based on the conventional type.

Installation

pip install cz-conventional-gitmoji

Usage

cz --name cz_gitmoji commit

Commitizen emoji (Unmaintained)

Just like conventional commit format, but with emojis and optionally time spent and related tasks.

Installation

pip install commitizen-emoji

Usage

cz --name cz_commitizen_emoji commit

An extension of the conventional commit format to include user-specified legacy change types in the CHANGELOG while preventing the legacy change types from being used in new commit messages

Installation

pip install cz_legacy

Usage

See the README for instructions on configuration

Third-Party Commitizen Providers

Commitizen can read and write version from different sources. In addition to the native providers, some alternative version sources are available as PyPI packages (installable with pip).

A provider for Deno projects. The provider updates the version in deno.json and jsr.json files.

Installation

pip install commitizen-deno-provider

Usage

Add deno-provider to your configuration file.

Example for .cz.yaml:

---
commitizen:
  major_version_zero: true
  name: cz_conventional_commits
  tag_format: $version
  update_changelog_on_bump: true
  version_provider: deno-provider
  version_scheme: semver

Provides prefix choices for commit messages based on staged files (Git only). For example, if the staged files are component/z/a.ts and component/z/b.ts, the path prefix option will be component/z and commit message might look like: component/z/: description of changes. If only one file is staged, the extension is removed in the prefix.

Installation

pip install cz-path

Usage

Add cz-path to your configuration file.

Example for .cz.json:

{
  "commitizen": {
    "name": "cz_path",
    "remove_path_prefixes": ["src", "module_name"]
  }
}

The default value for remove_path_prefixes is ["src"]. Adding / to the prefixes is not required.

Example session

 $ git add .vscode/
 $ cz -n cz_path c
? Prefix: (Use arrow keys)
 » .vscode
   .vscode/
   project
   (empty)
? Prefix: .vscode
? Commit title: adjust settings

.vscode: adjust settings

[main 0000000] .vscode: adjust settings
 2 files changed, 1 insertion(+), 11 deletions(-)

Commit successful!