NAME
Git::Lint::Config - configuration for Git::Lint
SYNOPSIS
use Git::Lint::Config;
my $config = Git::Lint::Config->load();
my $profiles = $config->{profiles};
DESCRIPTION
Git::Lint::Config defines and loads settings for Git::Lint.
CONSTRUCTOR
load
Loads check modules and user config, then returns the Git::Lint::Config object.
METHODS
user_config
Reads, parses, and returns the user config settings from git config.
CONFIGURATION
Configuration is done through git config files (~/.gitconfig or /repo/.git/config).
Only one profile, default, is defined internally. default contains all check modules by default.
The default profile can be overridden through git config files (~/.gitconfig or /repo/.git/config).
To set the default profile to only run the Whitespace commit check:
[lint "profiles.commit"]
default = Whitespace
Or set the default profile to Whitespace and the fictional commit check, Flipdoozler:
[lint "profiles.commit"]
default = Whitespace, Flipdoozler
Additional profiles can be added with a new name and list of checks to run.
[lint "profiles.commit"]
default = Whitespace, Flipdoozler
hardcore = Other, Module, Names
Message check profiles can also be defined.
[lint "profiles.message"]
# override the default profile to only contain SummaryLength, SummaryEndingPeriod, and BlankLineAfterSummary
default = SummaryLength, SummaryEndingPeriod, BlankLineAfterSummary
# create a summary profile with specific modules
summary = SummaryEndingPeriod, SummaryLength
An example configuration is provided in the examples directory of this project.