Maven Git Flow Plugin for Better Releases

Maven Git Flow Plugin for Better Releases

What is JGit Flow and why do I need a Maven plugin?

If you missed my other blog post, I recently released a Java library named jgit-flow that implements the git-flow branching and merging model introduced by Vincent Driessen in Java.

My hope is that developers will use this library to integrate git-flow workflows inside of their Java apps, and to get the ball rolling, I thought I’d be the first integrator.

If you read my other blog post, you’ll remember that although git-flow is really useful, trying to make it play nice with the maven-release-plugin (MRP) leaves a lot to be desired.

In particular, some of the pitfalls of the maven-release-plugin in the context of git-flow are:

So I figured the best plan of action was to write a specific plugin to enable git-flow style release workflows, and after a bit of twiddling, I’m pleased to bring you the JGit Flow Maven Plugin.

Features

While the plugin is primarily used to perform releases, it also provides full git-flow functionality including:

Differences with the Maven Release Plugin

Although the maven-jgitflow-plugin is based on the maven-release-plugin, it does things a bit differently to provide a cleaner workflow…

I’m hoping this plugin will help ease the pain of releasing maven projects with git-flow and help reduce the number of groans when someone says “can you do a maven release of…”

To get started, check out the plugin’s wiki. And when things don’t work, let me know in the plugin’s issue tracker.

If you’re interested in contributing, please fork the Maven JGitFlow Plugin on Bitbucket. When your super cool new feature is ready, just issue a pull request to the develop branch of the main project.

Enjoy!

resources

Wiki: https://bitbucket.org/atlassian/jgit-flow/wiki
Issue Tracker: https://ecosystem.atlassian.net/projects/MJF
Google Group: https://groups.google.com/forum/#!forum/maven-jgitflow-users
Source Code: https://bitbucket.org/atlassian/jgit-flow

Check out more developer resources from Atlassian:

Git Tutorials

Exit mobile version