Svn 使用maven从标记创建分支
我在主干中开发,并定期使用maven发布插件标记“稳定发布”。例如:Svn 使用maven从标记创建分支,svn,maven-2,branch,Svn,Maven 2,Branch,我在主干中开发,并定期使用maven发布插件标记“稳定发布”。例如: /trunk是MyProject 1.1-SNAPSHOT 创建稳定的版本 /tags/MyProject-1.1 很好,没有问题,只是很完美 有时我不得不部署修补程序,但主干还没有准备好。所以我需要最后一个稳定标签的一个分支。maven能帮我吗?当前,我将标记复制到新的分支位置 /branchs/MyProject-1.1.1-SNAPSHOT并使用mvn版本更新版本:set 所以我需要最后一个稳定标签的一个分支。maven
/trunk是MyProject 1.1-SNAPSHOT
创建稳定的版本
/tags/MyProject-1.1
很好,没有问题,只是很完美
有时我不得不部署修补程序,但主干还没有准备好。所以我需要最后一个稳定标签的一个分支。maven能帮我吗?当前,我将标记复制到新的分支位置
/branchs/MyProject-1.1.1-SNAPSHOT
并使用mvn版本更新版本:set
所以我需要最后一个稳定标签的一个分支。maven能帮我吗
Maven Release插件及其Release:branch
可以提供帮助。签出标记并从标记创建分支:
默认情况下,新分支中的POM
保持与本地版本相同的版本
工作副本,本地POM为
增加到下一个修订版。如果
您想在新的应用程序中更新版本
分支,而不是在工作副本中,
运行:
注意:如果您愿意,这可能很有用
从标记创建分支的步骤
在命令行上指定版本
您可能需要指定版本
要在命令行上使用。这个可以
例如,如果您是
在非交互式模式下运行发行版
模式分支目标可以使用相同的
准备目标使用的属性
用于指定要创建的版本
用过
在本例中,新
分支将被设置为版本
1.2-SNAPSHOT,本地POM将设置为版本2.0-SNAPSHOT
资源
- Maven发布插件示例
MyProject
\trunk
\branches
\theOldBranch
\tags
\MyProject-1.1
\MyProject-1.2
\MyProject-1.3
你应该
mvn发布:branch-DbranchName=theNewBranchFrom12-DupdateBranchVersions=true-DupdateWorkingCopyVersions=false-Dtag=MyProject-1.2
之后,您将看到MyProject\Branchs\theNewBranchFrom12,其中pom文件根据执行release:branch时的建议进行了修改。如果我查看最新的稳定版本,例如
svn co repo/tags/MyProject-1.1
我将获得一个文件夹MyProject-1.1。如果我将工作副本转换为分支MyProject-1.1-SNAPSHOT
,我必须在哪里指定新版本?我敢肯定maven没有向我索要它(这很奇怪,因为它与release:prepare配合得很好)@pascal thivent,你知道这是否有效吗,mvn release:branch-DbranchName=${project.version}
,见
mvn --batch-mode release:branch -DbranchName=my-branch-1.2 -Dproject.rel.org.myCompany:projectA=1.2 \
-Dproject.dev.org.myCompany:projectA=2.0-SNAPSHOT
MyProject
\trunk
\branches
\theOldBranch
\tags
\MyProject-1.1
\MyProject-1.2
\MyProject-1.3