mvn release:branch
-DbranchName=${project.artifactId}_${project.version}
-Dusername=${username}
-Dpassword=${passwd}
-DupdateBranchVersions=true
-DupdateVersionsToSnapshot=true
-DremoteTagging=false
-DsuppressCommitBeforeBranch=true
-DupdateWorkingCopyVersions=false
-DautoVersionSubmodules = true
При запуске Maven запросит версию для использования в ветви.Я предоставил 1.5.0-azuresupport-SNAPSHOT.Поскольку для autoVersionSubmodules установлено значение true, Maven Release будет автоматически использовать эти версии для всех подмодулей и, следовательно, также обновит все внутренние зависимости проекта до этой версии.
-DsuppressCommitBeforeBranch = true
По умолчанию Maven Releases создает промежуточные коммиты для текущей рабочей копии.Я не уверен в причине, но я думаю, что это было, потому что некоторые VCS не поддерживают ветвление / маркировку измененных рабочих копий.Этот параметр гарантирует, что в рабочую копию не будут внесены промежуточные коммиты.
-DremoteTagging = false
С SVN, по умолчанию, тегисозданы удаленно.Если вы хотите пропустить промежуточные коммиты, это должно быть установлено в false.
-DupdateBranchVersions = true
-DupdateWorkingCopyVersions = false
При ветвлении вы можете либо определить новые версии для текущей рабочей копии, либо новую ветвь, либо и то и другое.Как установлено здесь, рабочая копия останется одна, и плагин запросит новую версию для ветви.
здесь у вас есть все объясненные аргументы -D http://startbigthinksmall.wordpress.com/2011/11/29/create-branches-with-maven-release-plugin-svn/