Skip to main content

Add your description here

Project description

quick-commit

PyPI OS License: MIT CI CD Gitmoji

quick-commit is a CLI-based git commit automation tool that helps you follow the Conventional Commits specification.

The main features include:

  • automatic generation of commit messages based on the Conventional Commits specification with gitmoji support.
  • filter functions to find your desired commit types, scopes, and gitmojis.
  • sorting methods to give you your most commonly/recently used gitmojis and scopes right away.
  • commit message validation to ensure your commit messages are formatted correctly.
  • a simple and easy-to-use interface.
  • a customisable configuration file to suit your needs.

quick-commit is designed to help you write better commit messages and make your git history more readable and understandable with the least amount of effort.

Installation

To install quick-commit, you can use the following command:

pipx install quick-commit

This installs the quick-commit python application (requires Python 3.10 or later) and makes it available as a command-line tool.

Usage

To use quick-commit, you can run the following command:

quick-commit

This will open the quick-commit CLI interface where you can customise your commit message. Starting quick-commit with the -a flag additionally stages all modified files for the commit.

If you wish to include a footer in your commit message, use the flag --footer (or enable it by default in the configuration file).

To mark breaking changes in your commit message, use the flag --breaking.

Configuration

quick-commit uses a configuration file to store your preferences. A configuration file can be stored locally for your project at .quick-commit-config.yaml or globally in your user-config directory (/home/username/.config/quick-commit/config.yaml for Linux, or C:\Users\username\AppData\Roaming\quick-commit\config.yaml for Windows).

An example configuration file that shows off all supported settings is as follows:

types:
  exclude:
    - chore
    - revert
  add:
    - name: my-commit-type
      description: My custom commit type
    - name: my-other-commit-type
      description: My other custom commit type
  priority:
    - feat
    - my-commit-type
    - my-other-commit-type

scopes:
  exclude:
    - deps
    - '#\d+'
  add:
    - my-new-scope
  prohibit-no-scope: true

message:
  custom-pattern: '^\w+\.'

gitmojis:
  exclude:
    - art
    - fire
  add:
    - icon: 🎨
      name: my-gitmoji
      description: My custom gitmoji.
    - icon: 🔥
      name: my-gitmoji-2
      description: My custom gitmoji number 2.
  priority:
    - sparkles
    - my-gitmoji
    - my-gitmoji-2

always-enable-footer: true

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

quick_commit-0.2.0.tar.gz (77.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

quick_commit-0.2.0-py3-none-any.whl (14.9 kB view details)

Uploaded Python 3

File details

Details for the file quick_commit-0.2.0.tar.gz.

File metadata

  • Download URL: quick_commit-0.2.0.tar.gz
  • Upload date:
  • Size: 77.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for quick_commit-0.2.0.tar.gz
Algorithm Hash digest
SHA256 2822326d6489e526fdc06d2f22423ee44f06e5c47c0b75bfcde8fef88608d221
MD5 95b9aae19655f118390fc391dce39da7
BLAKE2b-256 877b6bf143097cb78e26dc752874b1835a0dcdba72c02dee44e8c00c2f57b052

See more details on using hashes here.

File details

Details for the file quick_commit-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: quick_commit-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 14.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for quick_commit-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1d16517d9a3b8d4a04635093b2a8724d2e1de1c9f06be2dfd1a6510f6726b9fa
MD5 3758fbe9f836e32af76888b166fcb81f
BLAKE2b-256 88a448d7130720e3a8b15588e8c7b52d832722f89c9fa842e8dd8df94413149c

See more details on using hashes here.

Supported by

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