使用 gitflow-maven-plugin 从发布分支发布到 master 的正确 maven 命令是什么?

What's the right maven command for releasing from release branch to master with gitflow-maven-plugin?

我正在使用 gitflow-maven-plugin 在 IntelliJ 中测试版本控制,我想手动更新主要和次要版本:

mvn -B gitflow:release-start -DcommitDevelopmentVersionAtStart=true -DversionDigitToIncrement=0

执行此命令后,创建了一个新的发布分支,名为'release/1.0.14',现在pom文件中的开发分支verison是'1.1.0-SNAPSHOT'(这就是我想要的,它更新了次要的,但我不确定为什么它在发布分支中是 1.0.14),下一步是更新到 master 分支,我试过了:

-B gitflow:release-finish -DversionDigitToIncrement=0 -X

但这不是我想要的,我猜大师会先更新到1.0.14,然后再更新到1.1.0?但是在这个命令之后,develop中的版本变成了1.0.15-SNAPSHOT,不知道怎样做才是正确的,任何想法将不胜感激。

Gitflow 定义了两个永久分支(masterdevelop)。 master 分支包含生产就绪版本(已发布版本)。 如果您开始发布,您当前来自 develop 的代码库将用于创建 release/x.y.z 分支,当您完成发布时,release/x.y.z 分支将合并回 master 并且develop.

版本更新在目标中完成:release-start,您可以影响 develop 分支更新的顺序:commitDevelopmentVersionAtStart

例如分支 developmentpom.xml 中的版本是 1.0.14-SNAPSHOT 如果你现在执行:

mvn gitflow:release-start -B -DversionDigitToIncrement=1 -DcommitDevelopmentVersionAtStart=true 

您最终应该得到一个新的发布分支 release/1.0.14,其版本为 1.0.14,并且分支 development 上您 pom.xml 中的版本已更新为 1.1.0-SNAPSHOT master 上的版本尚未更新(尚未)。要 "update" master 上的版本,您需要完成发布。


我有点误解了你的问题 - 因此我也添加了你在另一个问题中问过的这一部分。

查看文档:gitflow-maven-plugin(搜索:versionDigitToIncrement

The gitflow:release-finish and gitflow:release goals have versionDigitToIncrement parameter which controls which digit to increment in the next development version. Starts from zero. For example, if the release version is 1.2.3.4 and versionDigitToIncrement is set to 1 then the next development version will be 1.3.0.0-SNAPSHOT. If not set or set to not valid value defaults to increment last digit in the version.

来自 1.0.14-SNAPSHOT:

  • versionDigitToIncrement: 0development 上的主要版本更新为 2.0.0-SNAPSHOT
  • versionDigitToIncrement: 1development 上的主要版本更新为 1.1.0-SNAPSHOT
  • versionDigitToIncrement: 2development 上的主要版本更新为 1.0.15-SNAPSHOT

但是 似乎cli 上传递的-DversionDigitToIncrement 被忽略了。在 pom.xml 的配置区域中设置它会产生预期的结果。

<plugin>
  <groupId>com.amashchenko.maven.plugin</groupId>
  <artifactId>gitflow-maven-plugin</artifactId>
  <version>1.14.0</version>
  <configuration>
    <versionDigitToIncrement>1</versionDigitToIncrement>
  </configuration>
</plugin>