【发布时间】:2016-06-18 22:45:15
【问题描述】:
我在开发过程中使用 Jenkins、GIT 和 Maven。我有两个分支开发和掌握。像往常一样,我在开发中进行开发,对其进行测试并将其合并到 master 以便发布 jar。
我正在使用 Jenkins 将我的快照/发布 jar 部署到我们的 Nexus 存储库。当我部署/发布发布 jar(没有 -SNAPSHOT 的)时,我想在我的 github 存储库中创建一个发布 TAG,而我想在部署我的快照时避免这种情况。
我浏览了http://www.dev9.com/article/2014/9/java-release-process-with-continuous-delivery 和https://axelfontaine.com/blog/final-nail.html 的帖子以获得一些想法。
我的问题如下:
- 我是否需要为我的开发和主分支保留两个不同的 Jenkins 工作? master 将具有 maven-scm-plugin 和 maven-version-plugin 的配置来创建标签。
- 是否需要从我的 master 分支的 pom.xml 版本中删除“-SNAPSHOT”?我知道 scm 插件会在创建标签时删除那些,但我想 maven 会使用“-SNAPSHOT”发布/部署 jar?在为我的主分支运行 Jenkins 作业时,我想部署 1.0.0.jar 而不是 1.0.0-SNAPSHOT。
【问题讨论】: