一. GNU 风格的标准格式 :
主版本号 . 子版本号 [. 修正版本号 [. 编译版本号 ]]
英文对照 : Major.Minor[.Revision[.Build]]
Major:具有相同名称但不同主版本号的程序集不可互换。例如,这适用于对产品的大量重写,这些重写使得无法实现向后兼容性。
Minor :如果两个程序集的名称和主版本号相同,而次版本号不同,这指示显著增强,但照顾到了向后兼容性。例如,这适用于产品的修正版或完全向后兼容的新版本。
Revision :名称、主版本号和次版本号都相同但修订号不同的程序集应是完全可互换的。这适用于修复以前发布的程序集中的安全漏洞。
Build :内部版本号的不同表示对相同源所作的重新编译。这适合于更改处理器、平台或编译器的情况。
程序集的只有内部版本号或修订号不同的后续版本被认为是先前版本的修补程序 (Hotfix) 更新。
二、 GNU 风格的版本号管理策略:
项目初版本时 , 版本号可以为 0.1 或 0.1.0, 也可以为 1.0 或 1.0.0, 如果你为人很低调 , 我想你会选择那个主版本号为 0 的方式 ;
当项目在进行了局部修改或 bug 修正时 , 主版本号和子版本号都不变 , 修正版本号加 1;
当项目在原有的基础上增加了部分功能时 , 主版本号不变 , 子版本号加 1, 修正版本号复位为 0, 因而可以被忽略掉 ;
当项目在进行了重大修改或局部修正累积较多 , 而导致项目整体发生全局变化时 , 主版本号加 1;
另外 , 编译版本号一般是编译器在编译过程中自动生成的 , 我们只定义其格式 , 并不进行人为控制 .
三、后缀
另外,版本号的后面还可加入 Alpha, Beta, Gamma, Current, RC (Release Candidate), Release, Stable 等后缀,后缀的后面还可以加入1 位数字的版本号。对于用户来说,如果某个软件的主版本号进行了升级,用户还想继续那个软件,则发行软件的公司一般要对用户收取升级费用;而如果子版本号或修正版本号发生了升级,一般来说是免费的。
附:常用的后缀及说明
alpha 内部测试版
beta 外部测试版
demo 演示版
Enhance 增强版或者加强版 属于正式版
Free 自由版
Full version 完全版 属于正式版
shareware 共享版
Release 发行版 有时间限制
Upgrade 升级版
Retail 零售版
Cardware 属共享软件的一种,只要给作者回复一封电邮或明信片即可。(有的作者并由此提供注册码等),目前这种形式已不多见。
Plus 属增强版,不过这种大部分是在程序界面及多媒体功能上增强。
Preview 预览版
Corporation & Enterprise 企业版
Standard 标准版
Mini 迷你版也叫精简版只有最基本的功能
Premium — 贵价版
Professional — 专业版
Express — 特别版
Deluxe — 豪华版
Regged — 已注册版
CN — 简体中文版
CHT — 繁体中文版
EN — 英文版
Multilanguage — 多语言版