我最近完成了合并发行分支以使用jgitflow:release-finish
进行掌握和开发。构建成功。
但是现在我正在尝试使用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
但它仍然给出以下错误。我很困惑。
问题:
最佳答案
根据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/