我最近完成了合并发行分支以使用jgitflow:release-finish进行掌握和开发。构建成功。

maven - jgitflow :release-finish is not deleting the release branch-LMLPHP

但是现在我正在尝试使用jgitflow:releast-start创建一个新分支。但是它给出了以下错误。

[ERROR] Failed to execute goal external.atlassian.jgitflow:jgitflow-maven-plugin:1.0-m5.1:release-start (default-cli) on project <XXXXXXX>: Error starting release: Error starting release: a release branch [refs/remotes/origin/release/1.0.1] already exists. Finish that first! -> [Help 1]

当我运行jgitflow:release-start并将其输入为1.0.2时,它询问了以下问题。
What is the release version for "XXXXXXX"? (org.XXX.automation:XXXXXXX) [1.0.2]: 1.0.2

但它仍然给出以下错误。我很困惑。

问题:
  • 我们应该手动删除release-1.0.1分支吗?
  • 如果可以,我将丢失历史记录。有什么办法可以保存吗?
  • 最佳答案



    根据gitflow(此Maven插件背后的原理)的说法,发行分支应为临时分支,应在以后删除:



    然后,合并准备发布和更改的更改,因此在大多数情况下,更改的历史均无关紧要。

    但是,可以使用另一种方法作为gitflow的变体(但显然不受插件直接支持):保留一个长期有效的发行分支,用于所有发行版,并从rebase分支对其进行develop编码,而不是在准备好时创建一个新的分支。准备/执行发布。

    还要注意 release:finish 目标提供了 keepbranch 选项:



    默认值为false,因此默认情况下,它不应保留release分支。

    关于maven - jgitflow :release-finish is not deleting the release branch,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37880781/

    10-13 09:00