Maven JGit-Flow Plugin
Introduction
The
Maven JGit-Flow Plugin allows to create and merge a new relase, feature or hotfix branch in a simple way.
When starting a new release, the JGit-Flow Plugin the plugin asks for the release version and the next development version. Then a new release branch with the release version is created and the project versions are updated.
Now you can make changes in the release branch, e.g. update the RELEASE-NOTES.
During the finishing, the JGit-Flow Plugin creates a new tag for the release, merges the release branch to the master branch and update the develop branch.
Maven dependency
<plugin>
<groupId>external.atlassian.jgitflow</groupId>
<artifactId>jgitflow-maven-plugin</artifactId>
<version>1.0-m5.1</version>
<configuration>
<flowInitContext>
<masterBranchName>master</masterBranchName>
<developBranchName>develop</developBranchName>
<featureBranchPrefix>feature/</featureBranchPrefix>
<releaseBranchPrefix>release/</releaseBranchPrefix>
<hotfixBranchPrefix>hotfix/</hotfixBranchPrefix>
<versionTagPrefix />
</flowInitContext>
<useReleaseProfile>false</useReleaseProfile>
</configuration>
</plugin>
Start a new release
To start a new release, execute
mvn jgitflow:release-start
- autoVersionSubmodules=true - all submodules gets the same version
- allowSnapshots=true - allow SNAPSHOTS, possibly necessary in complex structure
All possible properties for
release-start
can be found
here.
Finish the new release
To finish new release, execute
mvn jgitflow:release-finish -DnoDeploy=true
- noDeploy=true - indicates that the install goal is called.
All possible properties for
release-finish
can be found
here.