com.github.eugenenosenko:changelog-maven-plugin

Conventional commit changelog generator for maven

License

License

Categories

Categories

Maven Build Tools
GroupId

GroupId

com.github.eugenenosenko
ArtifactId

ArtifactId

changelog-maven-plugin
Last Version

Last Version

0.0.3
Release Date

Release Date

Type

Type

maven-plugin
Description

Description

com.github.eugenenosenko:changelog-maven-plugin
Conventional commit changelog generator for maven
Project URL

Project URL

https://github.com/eugenenosenko/maven-conventional-changelog
Source Code Management

Source Code Management

https://github.com/eugenenosenko/maven-conventional-changelog

Download changelog-maven-plugin

How to add to project

<plugin>
    <groupId>com.github.eugenenosenko</groupId>
    <artifactId>changelog-maven-plugin</artifactId>
    <version>0.0.3</version>
</plugin>

Dependencies

compile (5)

Group / Artifact Type Version
org.slf4j : slf4j-api jar 1.7.28
org.slf4j : slf4j-simple jar 1.7.28
org.apache.maven : maven-plugin-api jar 3.3.9
org.apache.maven : maven-project jar 2.2.1
org.eclipse.jgit : org.eclipse.jgit jar 5.7.0.202003110725-r

provided (1)

Group / Artifact Type Version
org.apache.maven.plugin-tools : maven-plugin-annotations jar 3.6.0

test (1)

Group / Artifact Type Version
junit : junit jar 4.13

Project Modules

There are no modules declared in this project.

Maven Conventional Changelog generator for Java

Allows for automatic conventional changelog generation for Java / Maven projects based on GIT VCS history.

Maven Plugin

Info

Plugin requires you to follow Conventional Commit specifications in your commits in order to create a valid changelog entries, commits that do not comply with the convention they will be ignored.

Install the Plugin

   <plugins>
       <plugin>
           <groupId>com.github.eugenenosenko</groupId>
           <artifactId>changelog-maven-plugin</artifactId>
           <version>x.x.x</version>
       </plugin>
   </plugins>

Plugin configuration

Plugin allows you to specify following options:

  • <release> specifies number of releases to generate changelog. Default value is -1 which will generate entries for entire git history <release>0</release> will generate changelog only for last release, 1 and 2 for last 2 and 3 respectively.

  • filename specifies filename changelog should be written into

  • amendLastCommit specifies whether last commit should be amended to include changelog file changes, this will perform:

    • soft reset
    • add changelog file changes
    • commit with the same message as before
    • in case any tags where associated with the previous commit it will reapply the tag

See full configuration below

        <plugin>
            <groupId>com.github.eugenenosenko</groupId>
            <artifactId>changelog-maven-plugin</artifactId>
            <version>x.x.x</version>
            <configuration>
                <amendLastCommit>true</amendLastCommit>         <!-- default is "false"-->
                <filename>mychangelog.md</filename>             <!-- default is "CHANGELOG.md"-->
                <release>2</release>                            <!-- default is "-1"-->
                <backupFilename>backupfile.md</backupFilename>  <!-- default is "CHANGELOG.md.backup"-->
            </configuration>
        </plugin>

Usage

mvn conventional:changelog 

You can specify configuration parameters from command line same as for any other plugin, i.e.

mvn conventional:changelog -Drelease=1 -Dfilename=changelog.md -DamendLastCommit=true

Versions

Version
0.0.3