在哪个分支中应该根据git-flow标记beta版本?
我们有一个发布分支用于准备版本x.0.0
,但在发布x.0.0
之前,我们要发布一个测试版(x.0.0-beta
)。在这种情况下,是否应将发布分支合并到master
,然后在x.0.0-beta
上标记master
,或者在x.0.0
的发布分支上标记此测试版本?
其他问题:候选发布候选者(x.0.0-rc1
)的程序是否与测试版相同?
答案 0 :(得分:10)
我建议您将x.0.0-beta
标记放在发布分支上,一旦您准备好在某个地方发布测试版。实际上,您可能希望更进一步,标记为x.0.0-beta0001
,以便您可以根据需要使用多个测试版。
一旦您接近发布版,您也可以根据需要使用x.0.0-rc1
标记发布分支。
然后,一旦您将发布分支合并到master中,并最终返回到develop,您将使用最终版本号标记master分支。
这种方法取自GitVersion实用程序中git-flow的实现,该实用程序在此处记录:
http://gitversion.readthedocs.io/en/latest/git-branching-strategies/gitflow-examples/
答案 1 :(得分:3)
在我的理解中,所有版本都应合并到主分支上并在主分支上标记。因为所有Release分支都应遵循此流程。 语义版本控制应该阻止人们更新到已发布的alpha / beta / RC版本。
这可以保持您的流量清洁直线。 I.E.以后没有任何分支可以打开清理。在您提升版本号并测试代码后,您总是以相同的方式完成发布分支。
您可以在真实发布后删除特定版本的所有初步标签。这又是为了保持你的流量清洁。因为人们可能不会检查完整稳定版本的“不稳定”版本。
1.2.0-alpha
1.1.0
1.1.0-rc2
1.1.0-rc1
1.0.0
1.0.0-beta1
1.0.0-alpha1
会变成
1.2.0-alpha
1.1.0
1.0.0