0

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

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

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

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

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

4

1 回答 1

1

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

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

例如pom.xml,分支中的版本development1.0.14-SNAPSHOT 如果您现在执行:

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

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


我有点误解了您的问题-因此,我还添加了您在另一个问题中提出的这一部分。

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

gitflow:release-finish 和 gitflow:release 目标具有 versionDigitToIncrement 参数,该参数控制在下一个开发版本中增加哪个数字。从零开始。例如,如果发布版本是 1.2.3.4 并且 versionDigitToIncrement 设置为 1,那么下一个开发版本将是 1.3.0.0-SNAPSHOT。如果未设置或设置为无效值,则默认增加版本中的最后一位。

来自1.0.14-SNAPSHOT

  • versionDigitToIncrement: 0将主要版本更新development2.0.0-SNAPSHOT.
  • versionDigitToIncrement: 1将主要版本更新development1.1.0-SNAPSHOT.
  • versionDigitToIncrement: 2将主要版本更新development1.0.15-SNAPSHOT.

似乎-DversionDigitToIncrement传递的 cli 被忽略了。在您的配置区域中设置它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>
于 2020-01-08T16:04:04.197 回答