-
Notifications
You must be signed in to change notification settings - Fork 246
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: commit gitchangelog.rc to repo so anyone can generate a changelog
- Loading branch information
1 parent
e8f0274
commit 82e35fb
Showing
1 changed file
with
117 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,117 @@ | ||
# | ||
# Format | ||
# | ||
# ACTION: [AUDIENCE:] COMMIT_MSG [@TAG ...] | ||
# | ||
# Description | ||
# | ||
# ACTION is one of 'chg', 'fix', 'new' | ||
# | ||
# Is WHAT the change is about. | ||
# | ||
# 'chg' is for refactor, small improvement, cosmetic changes... | ||
# 'fix' is for bug fixes | ||
# 'new' is for new features, big improvement | ||
# | ||
# SUBJECT is optional and one of 'dev', 'usr', 'pkg', 'test', 'doc' | ||
# | ||
# Is WHO is concerned by the change. | ||
# | ||
# 'dev' is for developpers (API changes, refactors...) | ||
# 'usr' is for final users (UI changes) | ||
# 'pkg' is for packagers (packaging changes) | ||
# 'test' is for testers (test only related changes) | ||
# 'doc' is for doc guys (doc only changes) | ||
# | ||
# COMMIT_MSG is ... well ... the commit message itself. | ||
# | ||
# TAGs are additionnal adjective as 'refactor' 'minor' 'cosmetic' | ||
# | ||
# 'refactor' is obviously for refactoring code only | ||
# 'minor' is for a very meaningless change (a typo, adding a comment) | ||
# 'cosmetic' is for cosmetic driven change (re-indentation, 80-col...) | ||
# | ||
# Example: | ||
# | ||
# new: usr: support of bazaar implemented | ||
# chg: re-indentend some lines @cosmetic | ||
# new: dev: updated code to be compatible with last version of killer lib. | ||
# fix: pkg: updated year of licence coverage. | ||
# new: test: added a bunch of test around user usability of feature X. | ||
# fix: typo in spelling my name in comment. @minor | ||
# | ||
# Please note that multi-line commit message are supported, and only the | ||
# first line will be considered as the "summary" of the commit message. So | ||
# tags, and other rules only applies to the summary. The body of the commit | ||
# message will be displayed in the changelog with minor reformating. | ||
|
||
# | ||
# ``ignore_regexps`` is a line of regexps | ||
# | ||
# Any commit having its full commit message matching any regexp listed here | ||
# will be ignored and won't be reported in the changelog. | ||
# | ||
ignore_regexps = [ | ||
r'(?i)^(Merge pull request|Merge branch|Release|Update)', | ||
] | ||
|
||
|
||
# | ||
# ``replace_regexps`` is a dict associating a regexp pattern and its replacement | ||
# | ||
# It will be applied to get the summary line from the full commit message. | ||
# | ||
# Note that you can provide multiple replacement patterns, they will be all | ||
# tried. If None matches, the summary line will be the full commit message. | ||
# | ||
replace_regexps = { | ||
# current format (ie: 'chg: dev: my commit msg @tag1 @tag2') | ||
|
||
r'^([cC]hg|[fF]ix|[nN]ew)\s*:\s*((dev|use?r|pkg|test|doc)\s*:\s*)?([^\n@]*)(@[a-z]+\s+)*$': | ||
r'\4', | ||
} | ||
|
||
|
||
# ``section_regexps`` is a list of 2-tuples associating a string label and a | ||
# list of regexp | ||
# | ||
# Commit messages will be classified in sections thanks to this. Section | ||
# titles are the label, and a commit is classified under this section if any | ||
# of the regexps associated is matching. | ||
# | ||
section_regexps = [ | ||
('New', [ | ||
r'^[nN]ew\s*:\s*((dev|use?r|pkg|test|doc)\s*:\s*)?([^\n]*)$', | ||
]), | ||
('Changes', [ | ||
r'^[cC]hg\s*:\s*((dev|use?r|pkg|test|doc)\s*:\s*)?([^\n]*)$', | ||
]), | ||
('Fix', [ | ||
r'^[fF]ix\s*:\s*((dev|use?r|pkg|test|doc)\s*:\s*)?([^\n]*)$', | ||
]), | ||
('Other', None # Match all lines | ||
), | ||
|
||
] | ||
|
||
# ``body_split_regexp`` is a regexp | ||
# | ||
# Commit message body (not the summary) if existing will be split | ||
# (new line) on this regexp | ||
# | ||
body_split_regexp = r'[\n-]' | ||
|
||
|
||
# ``tag_filter_regexp`` is a regexp | ||
# | ||
# Tags that will be used for the changelog must match this regexp. | ||
# | ||
# tag_filter_regexp = r'^[0-9]+$' | ||
tag_filter_regexp = r'^(?:[vV])?[0-9\.]+$' | ||
|
||
|
||
# ``unreleased_version_label`` is a string | ||
# | ||
# This label will be used as the changelog Title of the last set of changes | ||
# between last valid tag and HEAD if any. | ||
unreleased_version_label = "%%version%% (unreleased)" |