我在一家产品开发公司工作。我们首先进行内部版本发布,然后再进行公共发布。我想知道其他产品开发公司是如何管理其发布的?他们如何确定发布编号?标记源代码控制?
我在一家产品开发公司工作。我们首先进行内部版本发布,然后再进行公共发布。我想知道其他产品开发公司是如何管理其发布的?他们如何确定发布编号?标记源代码控制?
我创建了一个类似的问题, 但我想要补充一点:我强烈建议使用类似于Jira这样的工具来管理发布周期。你可以将提交与请求/问题/错误相关联,然后将其标记为发布的一部分。
特别是,如果你想知道如何管理一个良好的发布周期,请看看Apache基金会是如何做到的,因为他们已经将其变成了一门科学。例如,这里是Mahout项目中发布路线图的链接。
除了跟踪问题并将它们打包到发布包中的工作系统外,您还需要开始将其与您的持续集成(我曾使用过CruiseControl和Hudson)和单元测试相集成,以便您的构建周期与其他所有内容一起管理。
基于ITIL框架的答案(与其他答案相差不大)。
ITIL将发布分为三组:主要软件发布、次要软件发布和紧急软件修复。
根据ITIL书籍:
•主要软件发布和硬件升级,通常包含大量新功能区域,其中一些可能使中间修复问题变得多余。主要升级或发布通常取代所有先前的次要升级、发布和紧急修复。
•次要软件发布和硬件升级,通常包含小的增强和修复,其中一些可能已经作为紧急修复发布。次要升级或发布通常取代所有先前的紧急修复。
•紧急软件和硬件修复,通常包含对少量已知问题的更正。
因此,按照这个标准,您应该有:
主要版本:v1、V2、v3等
次要版本:v1.1、V2.1等
紧急版本:v1.1.1、V2.1.1等。
R_2_1
之类的名称。初始版本是通过立即创建快照分支或标签R_2_1_0
来完成的。当QA针对一个版本报告错误时,在R_X_Y
分支上进行代码更改,然后创建一个R_2_1_1
分支来标记该版本。因此,树看起来像这样:Mainline
|
|- R_2_1
| |
| |-R_2_1_0 (locked)
| |
| |
| |-R_2_1_1 (locked)
| |
. .
. .
. .
关于TFS,跟随co-cat的回答。有一个新的URL,其中包含VS2010和VS11的一些更新。