Description
What I try to achieve, is to create a release branch from my development branch. The development branch has a snapshot version (e.g. 1.0.0-SNAPSHOT). As a result of the command I expect, to get a new branch containing version 1.0.0 and a changed development branch with version 1.0.1-SNAPSHOT. My project is a multi-module project.
Related to the specification I assume, that this is the command I need to use:
mvn release:branch -DupdateBranchVersions=true -DupdateWorkCopyVersions=true -DupdateVersionsToSnapshot=false -DreleaseVersion=1.0.0 -DdevelopmentVersion=1.0.1-SNAPSHOT -DbranchName=release-1.0.0 -DautoVersionSubmodules=true
But this will result in asking me for a branch version, which only accepts snapshot versions. If I use batch-mode it will just use 1.0.1-SNAPSHOT.
I also tried to give the versions per module by using -Dproject.dev... and -Dproject.rel.... It results in the same behaviour.
At the end I had a look into the code and it seems, that it simply ignores the updateVersionsToSnapshot, which defines whether to update versions to SNAPSHOT in the branch or not. Since the default is true, it will always put a snapshot version in the branch.
I will attach a patch file containing my proposed fix (including tests).