软件版本号相关知识汇总

来源:百度文库 编辑:神马文学网 时间:2024/04/28 06:48:46
W先生 发表于 2005-11-15 14:11:00阅读全文(1) |回复(0) |引用通告(0) |编辑
软件 开发 版本号 编程 知识 eyou团队 phpnewbie
几种版本号的说明
retail[full packaged product (fpp)]:零售版
oem(original equipment manufacturer):随机版
upgrade:升级版
beta:测试版
rc(release.candidate):发行候选版本
“和beta版最大的差别在于beta阶段会一直加入新的功能,但是到了rc版本,几乎就不会加入新的功能了,而是着重于除错!”
-From-
微软版本的真正含义
-by-
phpnewbie的专栏
软件项目版本号的命名格式

bylzlhero on 2005-10-09 14:56.
为了维护软件项目, 我们提出了对版本进行管理控制的要求. 而对于用户来说, 版本直接体现在版本号的命名上. 那么, 如何对版本号进行命名呢? 我查了许多的资料, 希望能解释得比较具体, 同时也希望您在阅读本文的时候, 能够对版本号的命名格式提出自己的见解, 这当然包括一些版本号命名的个例. 下面, 让我们看一下比较普遍的 3 种命名格式.
GNU 风格的版本号命名格式: 主版本号.子版本号[.修正版本号[.编译版本号]]
英文对照: Major_Version_Number.Minor_Version_Number[.Revision_Number[.Build_Number]]
示例: 1.2.1, 2.0, 5.0.0 build-13124
Windows 风格的版本号命名格式: 主版本号.子版本号[修正版本号[.编译版本号]]
英文对照: Major_Version_Number.Minor_Version_Number[Revision_Number[.Build_Number]]
示例: 1.21, 2.0
.Net Framework 风格的版本号命名格式: 主版本号.子版本号[.编译版本号[.修正版本号]]
英文对照: Major_Version_Number.Minor_Version_Number[.Build_Number[.Revision_Number]]
官方说明参考:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemVersionClassTopic.asp
由于, 有官方解释, 所以本文不做说明.
GNU 风格的版本号管理策略
当项目初版本时, 版本号可以为 0.1 或 0.1.0, 也可以为 1.0 或 1.0.0, 如果你为人很低调, 我想你会选择那个主版本号为 0 的方式; 当项目在进行了局部修改或 bug 修正时, 主版本号和子版本号都不变, 修正版本号加 1; 当项目在原有的基础上增加了部分功能时, 主版本号不变, 子版本号加 1, 修正版本号复位为 0, 因而可以被忽略掉; 当项目在进行了重大修改或局部修正累积较多, 而导致项目整体发生全局变化时, 主版本号加 1; 另外, 编译版本号一般是编译器在编译过程中自动生成的, 我们只定义其格式, 并不进行人为的控制.
Window 下的版本号管理策略
当项目初版时, 版本号为 1.0 或 1.00; 当项目在进行了局部修改或 bug 修正时,主版本号和子版本号都不变, 修正版本号加 1; 当项目在原有的基础上增加了部分功能时, 主版本号不变, 子版本号加 1, 修正版本号复位为 0, 因而可以被忽略掉; 当项目在进行了重大修改或局部修正累积较多, 而导致项目整体发生全局变化时, 主版本号加 1; 另外, 编译版本号一般是编译器在编译过程中自动生成的, 我们只定义其格式, 并不进行人为的控制.
另外, 还可以在版本号后面加入 Alpha, Beta, Gamma, Current, RC (Release Candidate), Release, Stable 等后缀, 在这些后缀后面还可以加入 1 位数字的版本号.
对于用户来说, 如果某个软件的主版本号进行了升级, 用户还想继续那个软件, 则发行软件的公司一般要对用户收取升级费用; 而如果子版本号或修正版本号发生了升级, 一般来说是免费的.
-by-
lzlhero
libtool 对于函数库版本号的建议:
Submitted byqyb on 一, 2005-10-10 14:52.
libtool info 里面的 "Updating version info"
CURRENT:REIVSION:AGE
1. 一开始都是 0:0:0
2. 如果代码做了修改, 则升级 REVISION
C:R:A -> C:r+1:A
3. 如果函数接口有任何变化. 升级 CURRENT,并把 REVISION 置 0
3.1 如果变化仅仅是增加了新的接口. 那么也增加 AGE
3.2 如果变化仅仅是删除了接口函数. 那么 AGE 置为0
-By-
qyb的网络书签:http://link.eyou.com/qiuyingbo
qyb的RSS:http://link.eyou.com/rss2/qiuyingbo
收藏到:[新浪ViVi][365Key][YouNote][搜狐网摘][博采中国][365Fav][天极网摘][和讯网摘][热门文摘]