jenkins 从一个分支发布 Maven
Posted
技术标签:
【中文标题】jenkins 从一个分支发布 Maven【英文标题】:Maven release from a branch by jenkins 【发布时间】:2016-07-25 14:45:54 【问题描述】:我必须使用 Jenkis 从分支执行 maven 发布并标记 RELEASE。同时,我需要更新主干上的版本(新 SNAPSHOT)。
例如:
/trunk 包含 Module_1.0.0-SNAPSHOT
/branches/Module_1.0.0-SNAPSHOT
在 /branches/Module_1.0.0-SNAPSHOT
上执行 Maven 发布后/trunk 包含 Module_1.0.1-SNAPSHOT
/tag/Module_1.0.0-RELEASE
设置 maven-release-plugin 和 scm (url, connection, developerConnection), /tag/Module_1.0.0-RELEASE 和分支上的新版本是正确的。
但是,即使 developerConnection 指向主干也不会更新主干上的版本。
我怎样才能做到这一点? 提前谢谢。
【问题讨论】:
【参考方案1】:如果您在分支 (/branches/Module_1.0.0-SNAPSHOT) 上运行 Maven 发布插件,它将:
更新此分支上的版本号 (1.0.0-SNAPSHOT --> 1.0.0) 在这个分支上应用标签(tag/1.0.0 或类似的东西) 将您的分支移至 1.0.1-SNAPSHOT即使你设置了 developerConnection 属性,Maven 发布插件也不会更新你的主干分支的版本号。
如果你想增加主干上的版本号,你必须从主干释放(或从分支释放+合并你的分支到你的主干)。
【讨论】:
非常感谢,布鲁诺。我也是,我刚刚验证无法从分支发布并自动更新主干上的版本号。我将尝试从分支中释放并将执行合并分支的发布后脚本附加到主干。以上是关于jenkins 从一个分支发布 Maven的主要内容,如果未能解决你的问题,请参考以下文章
在 Jenkins Pipeline/Jenkinsfile 中获取 git 分支名称