Fork me on GitHub

mavanagaiata:changelog

Full name:

com.github.koraktor:mavanagaiata:1.0.1:changelog

Description:

This goal allows to generate a changelog of the currently checked out branch of the Git repository. It will use information from tags and commit messages to build a reverse chronological summary of the development. It can be configured to display the changelog or save it to a file.

Attributes:

  • Requires a Maven project to be executed.
  • The goal is thread-safe and supports parallel builds.
  • Since version: 0.2.0.
  • Binds by default to the lifecycle phase: process-resources.

Optional Parameters

Name Type Since Description
<baseDir> File - The working tree of the Git repository.

If there is only one project inside the Git repository this is probably ${project.basedir} (default).

Note: The GIT_DIR can be found automatically even if this is not the real working tree but one of its subdirectories. But Mavanagaiata cannot determine the state of the working tree (e.g. for the dirty flag) if this is not set correctly.


Default value is: ${project.basedir}.
User property is: mavanagaiata.baseDir.
<dateFormat> String - The date format to use for various dates
Default value is: MM/dd/yyyy hh:mm a Z.
User property is: mavanagaiata.dateFormat.
<dirtyFlag> String 0.4.0 The flag to append to refs if there are changes in the index or working tree

Setting this to either "false" or "null" will disable flagging refs as dirty.


Default value is: -dirty.
User property is: mavanagaiata.dirtyFlag.
<dirtyIgnoreUntracked> boolean 0.5.0 Specifies if the dirty flag should also be appended if there are untracked files

If false only modified files that are already known to Git will cause the dirty flag to be appended.

Warning: Do not enable this if builds should be reproducible.


Default value is: false.
User property is: mavanagaiata.dirtyIgnoreUntracked.
<encoding> String - The encoding to use for generated output
Default value is: UTF-8.
User property is: mavanagaiata.encoding.
<failGracefully> boolean 0.6.0 Specifies if a failed execution of the mojo will stop the build process

If true a failure during mojo execution will not stop the build process.


Default value is: false.
User property is: mavanagaiata.failGracefully.
<footer> String - The footer to print below the output
Default value is: Generated by Mavanagaiata %s at %s.
User property is: mavanagaiata.footer.
<format> ChangelogFormat 0.9.0 The format to use while generating the changelog
See also: formatTemplate
User property is: mavanagaiata.changelog.format.
<formatTemplate> ChangelogFormat$Formats 0.9.0 The formatting template to use while generating the changelog

This may be one of DEFAULT or MARKDOWN.

Individual attributes may be overridden using format.


Default value is: DEFAULT.
User property is: mavanagaiata.changelog.formatTemplate.
<gitDir> File - The GIT_DIR path of the Git repository

Warning: Do not set this when you don't have a good reason to do so. The GIT_DIR can be found automatically if your project resides somewhere in a usual Git repository.


User property is: mavanagaiata.gitDir.
<head> String - The commit or ref to use as starting point for operations
Default value is: HEAD.
User property is: mavanagaiata.head.
<linkTo> ChangelogMojo$LinkToBaseUrl 0.9.0 Used to select the service to create links to

GITHUB and GITLAB are available.


Default value is: GITHUB.
User property is: mavanagaiata.changelog.linkTo.
<linkToBaseUrl> String 0.9.0 Can be used to override the pre-defined URLs from linkTo with a customized URL
User property is: mavanagaiata.changelog.linkToBaseUrl.
<linkToProject> String 0.9.0 The project name for GitHub links
User property is: mavanagaiata.changelog.linkToProject.
<linkToUser> String 0.9.0 The user name for GitHub links
User property is: mavanagaiata.changelog.linkToUser.
<outputFile> File 0.4.1 The file to write the changelog to
User property is: mavanagaiata.changelog.outputFile.
<propertyPrefixes> String[] - The prefixes to prepend to property keys
Default value is: mavanagaiata,mvngit.
User property is: mavanagaiata.propertyPrefixes.
<skip> boolean 0.5.0 Skip the plugin execution
Default value is: false.
User property is: mavanagaiata.skip.
<skipCommitsMatching> String 0.8.0 Whether to skip commits that match the given regular expression
User property is: mavanagaiata.changelog.skipCommitsMatching.
<skipMergeCommits> boolean 0.9.0 Whether to skip merge commits’ messages
Default value is: true.
User property is: mavanagaiata.changelog.skipMergeCommits.
<skipNoGit> boolean 0.5.0 Skip the plugin execution if not inside a Git repository
Default value is: false.
User property is: mavanagaiata.skipNoGit.
<skipTagged> boolean - Whether to skip tagged commits' messages
This is useful when usually tagging commits like "Version bump to X.Y.Z"
Default value is: false.
User property is: mavanagaiata.changelog.skipTagged.

Parameter Details

<baseDir>

The working tree of the Git repository.

If there is only one project inside the Git repository this is probably ${project.basedir} (default).

Note: The GIT_DIR can be found automatically even if this is not the real working tree but one of its subdirectories. But Mavanagaiata cannot determine the state of the working tree (e.g. for the dirty flag) if this is not set correctly.

  • Type: java.io.File
  • Required: No
  • User Property: mavanagaiata.baseDir
  • Default: ${project.basedir}

<dateFormat>

The date format to use for various dates
  • Type: java.lang.String
  • Required: No
  • User Property: mavanagaiata.dateFormat
  • Default: MM/dd/yyyy hh:mm a Z

<dirtyFlag>

The flag to append to refs if there are changes in the index or working tree

Setting this to either "false" or "null" will disable flagging refs as dirty.

  • Type: java.lang.String
  • Since: 0.4.0
  • Required: No
  • User Property: mavanagaiata.dirtyFlag
  • Default: -dirty

<dirtyIgnoreUntracked>

Specifies if the dirty flag should also be appended if there are untracked files

If false only modified files that are already known to Git will cause the dirty flag to be appended.

Warning: Do not enable this if builds should be reproducible.

  • Type: boolean
  • Since: 0.5.0
  • Required: No
  • User Property: mavanagaiata.dirtyIgnoreUntracked
  • Default: false

<encoding>

The encoding to use for generated output
  • Type: java.lang.String
  • Required: No
  • User Property: mavanagaiata.encoding
  • Default: UTF-8

<failGracefully>

Specifies if a failed execution of the mojo will stop the build process

If true a failure during mojo execution will not stop the build process.

  • Type: boolean
  • Since: 0.6.0
  • Required: No
  • User Property: mavanagaiata.failGracefully
  • Default: false

<footer>

The footer to print below the output
  • Type: java.lang.String
  • Required: No
  • User Property: mavanagaiata.footer
  • Default: Generated by Mavanagaiata %s at %s

<format>

The format to use while generating the changelog
See also: formatTemplate
  • Type: com.github.koraktor.mavanagaiata.mojo.ChangelogFormat
  • Since: 0.9.0
  • Required: No
  • User Property: mavanagaiata.changelog.format

<formatTemplate>

The formatting template to use while generating the changelog

This may be one of DEFAULT or MARKDOWN.

Individual attributes may be overridden using format.

  • Type: com.github.koraktor.mavanagaiata.mojo.ChangelogFormat$Formats
  • Since: 0.9.0
  • Required: No
  • User Property: mavanagaiata.changelog.formatTemplate
  • Default: DEFAULT

<gitDir>

The GIT_DIR path of the Git repository

Warning: Do not set this when you don't have a good reason to do so. The GIT_DIR can be found automatically if your project resides somewhere in a usual Git repository.

  • Type: java.io.File
  • Required: No
  • User Property: mavanagaiata.gitDir

<head>

The commit or ref to use as starting point for operations
  • Type: java.lang.String
  • Required: No
  • User Property: mavanagaiata.head
  • Default: HEAD

<linkTo>

Used to select the service to create links to

GITHUB and GITLAB are available.

  • Type: com.github.koraktor.mavanagaiata.mojo.ChangelogMojo$LinkToBaseUrl
  • Since: 0.9.0
  • Required: No
  • User Property: mavanagaiata.changelog.linkTo
  • Default: GITHUB

<linkToBaseUrl>

Can be used to override the pre-defined URLs from linkTo with a customized URL
  • Type: java.lang.String
  • Since: 0.9.0
  • Required: No
  • User Property: mavanagaiata.changelog.linkToBaseUrl

<linkToProject>

The project name for GitHub links
  • Type: java.lang.String
  • Since: 0.9.0
  • Required: No
  • User Property: mavanagaiata.changelog.linkToProject

<linkToUser>

The user name for GitHub links
  • Type: java.lang.String
  • Since: 0.9.0
  • Required: No
  • User Property: mavanagaiata.changelog.linkToUser

<outputFile>

The file to write the changelog to
  • Type: java.io.File
  • Since: 0.4.1
  • Required: No
  • User Property: mavanagaiata.changelog.outputFile

<propertyPrefixes>

The prefixes to prepend to property keys
  • Type: java.lang.String[]
  • Required: No
  • User Property: mavanagaiata.propertyPrefixes
  • Default: mavanagaiata,mvngit

<skip>

Skip the plugin execution
  • Type: boolean
  • Since: 0.5.0
  • Required: No
  • User Property: mavanagaiata.skip
  • Default: false

<skipCommitsMatching>

Whether to skip commits that match the given regular expression
  • Type: java.lang.String
  • Since: 0.8.0
  • Required: No
  • User Property: mavanagaiata.changelog.skipCommitsMatching

<skipMergeCommits>

Whether to skip merge commits’ messages
  • Type: boolean
  • Since: 0.9.0
  • Required: No
  • User Property: mavanagaiata.changelog.skipMergeCommits
  • Default: true

<skipNoGit>

Skip the plugin execution if not inside a Git repository
  • Type: boolean
  • Since: 0.5.0
  • Required: No
  • User Property: mavanagaiata.skipNoGit
  • Default: false

<skipTagged>

Whether to skip tagged commits' messages
This is useful when usually tagging commits like "Version bump to X.Y.Z"
  • Type: boolean
  • Required: No
  • User Property: mavanagaiata.changelog.skipTagged
  • Default: false