我们结合使用GitHub,TeamCity,CodeReviews和Octopus部署来管理我们的整体发布管理流程。我们开发网站和几个内部使用的API。
我们正在寻求更好地实现API的更好版本,并将使用Semver。
我的问题是,您在哪个阶段为其分配版本号?
示例:
版本应该在什么阶段增加到1.3.0?如果它在进入QA的阶段更新,那么同时另一个开发人员可能会创建另一个功能分支,该分支经过测试并准备好比分发2更快地发布到生产中 - 所以真的后者应该是1.3。 0,而将在几周后推出生产的Branch2应该[可能是1.4.0。
那么,我是否正确地认为版本号只应在QA签署后以及最终合并回主分支之前递增?
感谢您提前的时间 问候, dotdev
答案 0 :(得分:0)
如您所述,我看到了以下版本:
1.2.1
Master中的当前版本为1.2.1 1.3.0-alpha+branch2
用户创建分支(Branch2)以实现一些新功能1.3.0-beta+branch2
用户将Branch2部署到QA中以供审核和签署1.3.0
用户将Branch2合并为Master并发布到Production。在任何官方/产品发布后,必须立即增加到下一个版本。这是一个可以提供帮助的草图。
feature *-(1.3.0-beta+feature1)---* *-(1.4.0-beta+feature2)--
/ \ /
master -[v1.2.1]-(1.3.0-beta)-*-----------------------------*-[v1.3.0]-(1.4.0-beta)--*-----
\ \
release *---- *---
您可以手动将标记应用于由方括号表示的官方版本,而版本(正常括号)会在历史记录中包含帐户标记。
我建议您查看精彩的GitVersion工具,以帮助您管理计算。