NAME

Git::Hooks::CheckYoutrack - Git::Hooks plugin which requires youtrack ticket number on each commit message

SYNOPSIS

As a Git::Hooks plugin you don't use this Perl module directly. Instead, you may configure it in a Git configuration file like this:

[githooks]

   # Enable the plugin
   plugin = CheckYoutrack

[githooks "checkyoutrack"]

   # '/youtrack' will be appended to this host
   youtrack-host = "https://example.myjetbrains.com"

   # Refer: https://www.jetbrains.com/help/youtrack/standalone/Manage-Permanent-Token.html
   # to create a Bearer token
   youtrack-token = "<your-token>"

   # Regular expression to match for Youtrack ticket id
   matchkey = '^((?:P|M)(?:AY|\d+)-\d+)'

   # Setting this flag will aborts the commit if valid Youtrack number not found
   # Shows a warning message otherwise - default false
   required = true 

   # Print the fetched youtrack ticket details like Assignee, State etc..,
   # default false
   print-info = true

DESCRIPTION

This plugin hooks the following git hooks to guarantee that every commit message cites a valid Youtrack Id in the log message, so that you can be certain that every commit message has a valid link to the Youtrack ticket. Refer Git::Hooks Usage for steps to install and use Git::Hooks

This plugin also hooks prepare-commit-msg to pre-populate youtrack ticket sumary on the commit message if the current working branch name is starting with the valid ticket number

METHODS

commit-msg, applypatch-msg

These hooks are invoked during the commit, to check if the commit message starts with a valid Youtrack ticket Id.

prepare-commit-msg

This hook is invoked before a commit, to check if the current branch name start with a valid youtrack ticket id and pre-populates the commit message with youtrack ticket: summary

SEE ALSO

Git::Hooks

Git::Hooks::CheckJira

AUTHORS

Dinesh Dharmalingam, <dinesh@exceleron.com>

LICENSE

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.