git - 使用 Maven/Jenkins/Git 创建发布标签

标签 git maven jenkins

我使用 Jenkins、Git 和 Maven 作为我的开发过程的一部分。我有两个分支 developmaster。像往常一样,我在开发中进行开发,测试它并将其 merge 到 master 以便发布 jar。

我正在使用 Jenkins 将我的快照/发布 jar 部署到我们的 Nexus 存储库。当我部署/发布发布 jar(没有 -SNAPSHOT)时,我想在我的 GitHub 存储库中创建一个发布标签,而我想在部署快照时避免这种情况。

我浏览了 http://www.dev9.com/article/2014/9/java-release-process-with-continuous-delivery 上的帖子和 https://axelfontaine.com/blog/final-nail.html以获得一些想法。

我的问题如下:

  • 我需要为我的开发分支和主分支保留两个不同的 Jenkins 作业吗? master 的配置将使用 maven-scm-pluginmaven-version-plugin 来创建标签。
  • 我需要从 master 分支的 pom.xml 版本中删除 -SNAPSHOT 吗?我知道 scm 插件会在创建标签时删除这些内容,但我想 Maven 会使用 -SNAPSHOT 发布/部署 jar?在为主分支运行 Jenkins 作业时,我想部署 1.0.0.jar 而不是 1.0.0-SNAPSHOT

最佳答案

基本上你需要以下插件:http://maven.apache.org/maven-release/maven-release-plugin/

该插件执行以下操作:

  1. 删除-SNAPSHOT,然后提交
  2. 在 Git 中标记版本,提交
  3. 增加版本号并添加-SNAPSHOT,提交
  4. push 这些更改

jenkins 中的样子(作业的配置) jenkins

关于git - 使用 Maven/Jenkins/Git 创建发布标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35808923/

相关文章:

Git over ssh 没有在服务器上安装 Git

java - log4j - 指向多个 log4j.properties 文件之一

linux - Jenkins 亚马逊 Linux 设置

linux - Git/Jenkins/Windows (not ordered) 行结束问题

git - merge 跨文件的更改

java - 如何在 maven-jar-plugin 中指定 --main-class 和 --module-version?

java - 如何使用 maven 配置 pom.xml 以集成 install4j 安装程序中的所有依赖库

android - Gradle Artifactory 插件失败,出现 "Cannot cast object to ArtifactoryPluginConvention"

linux - 如何将文件从 Linux 实例正确复制到 aws ec2 实例?

git - 如何检索 git pull 历史记录