What about version in pom.xml for feature branches?

I'm new to git, feature branching etc... but I really like it ;)

Thats my example:

I have my develop branch with let's say "1.0-SNAPSHOT" set as version in my pom.xml.

On top of that I create a feature branch and I want to be able to build that feature branch independently. As a result I (guess I) have to change the version to "1.0-<feature>-SNAPSHOT".

Everything works as expected now. Bamboo will build my feature branch, I can deploy the resulting artefacts, they are different, don't interfere, ...

But now I'm done with my feature and want to merge it.

When I create a "Pull Request" in Stash I have the pom.xml changes as well in there, although I don't want them to be there...

(of course I could just change the version back before the merge, but that's kinda weird)

=> So what is the common workflow for that?

4 answers

1 accepted

Hi Johannes,

This is one of the real problems with maven. Checking the version into a file in Git is a bad idea (we have the same problem in Stash though).

What we do is to have a special build that does a maven release on a temporary branch, merges back to the original branch and _then_ does a 'git merge --strategy=ours' to the next 'upstream' branch. This merge will completely ignore the changes on the source branch (which is normally something you don't want to do). From that point you can merge up the chain as normal as there will be nothing to merge. It's not quite the same thing as what you're doing though, we don't bother with feature versions, only releases.

So basically you can't really merge the pull request without doing something manual first. Reverting the version before (or just after) the merge might be your best option. It's ugly, but that's maven for you.




I worried about that, but good to hear that you have them same problem ;)

We would love to see Stash enhanced to support this common scenario...!

Hi Johannes,

To avoid pom merge, you could perhaps use bamboo variables inside the pom as explained here.

If variable names are the same in feature branch and in develop branch no merge will be proposed for pom.xml



I'll give it a try ;)


perhaps a little bit late, but if you still have this problem, have a look on my project on github. I solved that via a git merge driver. 


This is ideal for our use. Thanks, Sven.


This extension generate the version by the current branch. It will not change the pom.xml so.

Disclaimer: I am the author.

Suggest an answer

Log in or Join to answer
Community showcase
Louis De Jaeger
Posted yesterday in Off-topic

Friday fun: your best joke

Hi all Lets make this Friday fun really fun and post one (or more) of your best jokes! The joke can be about an Atlassian product, or just a really fun joke you want to share! I’m not the best j...

85 views 2 2
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you
Atlassian Team Tour

Join us on the Team Tour

We're bringing product updates and pro tips on teamwork to ten cities around the world.

Save your spot