如何根据 Git 标签设置 Jenkins 构建的版本?
我现在在做什么:
- 使用 Maven 版本插件根据 Jenkins 构建号设置当前构建的发布版本,例如新版本=1.1.$BUILD_NUMBER
- 使用 Maven 构建和部署项目
- 使用 Git Publisher 使用内部版本号标记 Git 中的内部版本,例如MYPROJECT_BUILD-1.1.$BUILD_NUMBER
我想做什么:我不想使用 Jenkins BUILD_NUMBER,而是想从 Git 标签中提取最后一个内部版本号并递增它
- 从 Git 中获取与给定模式匹配的最新标签,例如 MYPROJECT_BUILD-.*
- 从标签中提取内部版本号并递增
- 使用 Maven 构建和部署项目
- 使用 Git Publisher 使用递增的内部版本号标记 Git 中的内部版本,例如MYPROJECT_BUILD-1.1.124
实现此目标的最佳方法是什么?
最佳答案
Git 并不真正了解 Maven。 Git 应该驱动编号有什么具体原因吗?
恕我直言,Maven 是更好的选择。它知道您的源代码管理(如果您已正确配置 <scm>
)并且知道版本是什么以及它是发布版还是快照。
通过 Maven + Git + Jenkins 的组合,我们对 Release plugin 非常满意:它获取您的快照,执行 Maven 发布并在 Git 中标记它,然后将更改提交到下一个快照(您定义该版本号)。
关于git - 如何从 Git 标签在 Jenkins 中创建发布号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27783434/