我今天试着切换我们的发布版本,以便它使用分支。在我换衣服之前,我刚做了
mvn release:prepare -B -Dusername=$SVN_USER -Dpassword=$SVN_PASSWORD -Dtag=$RELEASE_VERSION -DreleaseVersion=$RELEASE_VERSION -DdevelopmentVersion=$NEXT_DEV_VERSION
mvn release:perform现在我改为使用
mvn release:branch -B -Dusername=$SVN_USER -Dpassword=$SVN_PASSWORD -DbranchName=$RELEASE_VERSION -DreleaseVersion=$RELEASE_VERSION -DdevelopmentVersion=$NEXT_DEV_VERSION -DautoVersionSubmodules=true -DbranchBase=$SVN_BRANCH_BASE -DdryRun=false -DsuppressCommitBeforeBranch=false -DremoteTagging=false -DupdateBranchVersions=true -DupdateVersionsToSnapshot=false -DupdateWorkingCopyVersions=true -DgenerateBackupPoms=false然后我签出了那个分支,并尝试在它上执行一个释放。但这不起作用,它告诉我:无法配置SCM存储库:没有这样的提供程序:'s‘
SCM配置为:
<scm>
<connection>scm:svn:https://svn2.mycompany.com:8443/svn/polyalert/branches/02_Los_1/releases/0.01.9</connection>
<developerConnection>scm:svn:https://svn2.cmycompany.com:8443/svn/polyalert/branches/02_Los_1/releases/0.01.9</developerConnection>
<url>https://svn2.mycompany.com:8443/svn/polyalert/branches/02_Los_1/releases/0.01.9</url>
</scm>这个URL看起来可能有点奇怪,但是我们没有默认的布局,这是一个正确的分支url。
这是用maven 3完成的。我不确定这样做是否正确:在另一个位置执行release:分支,但我没有更好的想法,特别是因为我不能设置任何release.properties文件,因为它是用release:prepare创建的。或者有必要做release:分支和release:prepare?第一次尝试不起作用,得到了同样的错误。
有什么建议吗?
谢谢,迈克尔
发布于 2011-11-07 20:57:13
经过大量的努力,我发现以下方法是有效的:
中具有绝对正确的scm信息。
mvn release:branch -B -Dusername=$SVN_USER -Dpassword=$SVN_PASSWORD -DbranchName=$RELEASE_VERSION -DreleaseVersion=$RELEASE_VERSION -DdevelopmentVersion=$NEXT_DEV_VERSION -DautoVersionSubmodules=true -DbranchBase=$SVN_BRANCH_BASE -DupdateWorkingCopyVersions=true。这将在SVN中创建一个分支,其中所有版本都像在主干中一样保存,然后将主干中的版本号增加到$NEXT_DEV_VERSION并提交。Branchbase也可以在插件配置中设置(在这种情况下,这里可以省略它)。mvn release:prepare -B -Dusername=$SVN_USER -Dpassword=$SVN_PASSWORD -Dtag=$RELEASE_VERSION -DreleaseVersion=$RELEASE_VERSION将分支中的版本号更新为$RELEASE_VERSION (将通过此命令在本地更改+提交到分支中)。此命令将在顶部创建一个版本标签。mvn release:perform以开始实际的构建。这将签出在上一步中创建的标签,并在此代码的基础上构建。https://stackoverflow.com/questions/8002563
复制相似问题