Categorygithub.com/mishamyrt/ticketeer
modulepackage
0.1.5
Repository: https://github.com/mishamyrt/ticketeer.git
Documentation: pkg.go.dev

# README

Ticketeer Quality assurance Coverage Status

Utility to insert task ticket id into commit message.

  • Simple. Does not need to be configured;
  • Environment agnostic. Works with any platform that can run git;
  • Fast. Won't slow down your commit process as actions are performed instantly.

Installation

go

go install github.com/mishamyrt/ticketeer@latest

pnpm

pnpm add --save-dev ticketeer

npm

npm install --save-dev ticketeer

yarn

yarn add --dev ticketeer

Usage

Standalone

Ticketeer can be used as a standalone tool. To install hook, run:

ticketeer install

The utility will check for installed hooks and install its own.

Runner

If you are already using runner hooks on your project and want to keep everything under their control, add a ticketeer apply call to your runner configuration.

Lefthook

Add the following to your lefthook.yml file:

prepare-commit-msg:
  commands:
    append-ticket-id:
      run: ticketeer apply

If ticketeer is installed using NodeJS package manager, prefix command with your package manager runner, e.g. pnpm ticketeer apply, yarn ticketeer apply or npx ticketeer apply.

Configuration

Ticketeer is configured by default to be as comfortable as possible for most, but the settings can be overridden. All options are optional (hehe), if you don't specify your own - default value will be used.

  • message
    • location - where to insert ticket id into commit message (title or body).
    • template - template to use when inserting ticket id into commit message. Must include {ticket} variable.
  • ticket
    • format - format of ticket id (numeric, alphanumeric, alphanumeric-small, alphanumeric-caps).
    • allow-empty - allow empty ticket id. If set to false, commit will be aborted if branch name doesn't contain ticket id.
  • branch
    • format - format of branch name (git-flow, git-flow-typeless, ticket-id).
    • ignore - Additional list of branch names to ignore. Default value is ["main", "master", "develop", "dev", "release/*"].

Default configuration is as follows:

message:
  location: body
  template: "{ticket}"
ticket:
  format: alphanumeric-caps
  allow-empty: true
branch:
  format: git-flow

# Packages

No description provided by the author
No description provided by the author