一、GNU 风格的版本号命名格式

主版本号 . 子版本号 [. 修正版本号 [. 编译版本号 ]]
Major_Version_Number . Minor_Version_Number[ . Revision_Number[ . Build_Number]]
示例 : 1.2.1, 2.0, 5.0.0 build-13124

二、一些约定

主版本号(Major):具有相同名称但不同主版本号的程序集不可互换。例如,这适用于对产品的大量重写,这些重写使得无法实现向后兼容性。
子版本号(Minor):如果两个程序集的名称和主版本号相同,而次版本号不同,这指示显著增强,但照顾到了向后兼容性。例如,这适用于产品的修正版或完全向后兼容的新版本,在线编程挑战平台 InterviewStreet.
修正版本号(Build):内部版本号的不同表示对相同源所作的重新编译。这适合于更改处理器、平台或编译器的情况。
编译版本号(Revision):名称、主版本号和次版本号都相同但修订号不同的程序集应是完全可互换的。这适用于修复以前发布的程序集中的安全漏洞。
程序集的只有内部版本号或修订号不同的后续版本被认为是先前版本的修补程序 (Hotfix) 更新。

三、版本号的管理策略

项目初版本时,版本号可以为 0.1 或 0.1.0, 也可以为 1.0 或 1.0.0;
当项目在进行了局部修改或 bug 修正时,主版本号和子版本号都不变,修正版本号加 1;
当项目在原有的基础上增加了部分功能时,主版本号不变,子版本号加 1,修正版本号复位为 0,因而可以被忽略掉;
当项目在进行了重大修改或局部修正累积较多,而导致项目整体发生全局变化时,主版本号加 1;
另外,编译版本号一般是编译器在编译过程中自动生成的,我们只定义其格式,并不进行人为控制。

四、后缀

版本号的后面还可加入 Alpha, Beta, Gamma, Current, RC (Release Candidate), Release, Stable 等后缀,后缀的后面还可以加入1 位数字的版本号。常用的后缀如下:

  • α(alphal)内部测试版

α版,此版本表示该软件仅仅是一个初步完成品,通常只在软件开发者内部交流,也有很少一部分发布给专业测试人员。一般而言,该版本软件的 bug 较多,普通用户最好不要安装。

  • β(beta)外部测试版

该版本相对于α版已有了很大的改进,消除了严重的错误,但还是存在着一些缺陷,需要经过大规模的发布测试来进一步消除。这一版本通常由软件公司免费 发布,用户可从相关的站点下载。通过一些专业爱好者的测试,将结果反馈给

开发者,开发者们再进行有针对性的修改。该版本也不适合一般用户安装。

  • γ(gamma)终期测试版

该版本已经相当成熟了,与即将发行的正式版相差无几,如果用户实在等不及了,尽可以装上一试。

  • RC(Release Candidate)发行候选版

Candidate是候选人的意思,用在软件上就是候选版本。Release Candidate就是发行候选版本。和Beta版最大的差别在于 Beta阶段会一直加入新的功能,但是到了RC版本,几乎就不会加入新的功能了,而主要着重于除错(该版本已经相当成熟了,基本上不存在导致错误的 BUG,与即将发行的正式版相差无几)。

  • R(Release)最终发行版、正式版

该版本意味“最终释放版”,在出了一系列的测试版之后,终归会有一个正式版本,对于用户而言,购买或使用该版本的软件绝对不会错。该版本有时也称为 标准版。一般情况下,release不会以单词形式出现在软件封面上,取而代之的是符号 (r) ,如 windows nt(r) 4.0、ms-dos(r) 6.22 等。

GNU风格的软件版本号命名规范相关推荐

  1. 软件版本号命名规范_软件发布版本介绍

    一. 软件版本阶段介绍 Alpha版: 此版本表示该软件在此阶段主要是以实现软件功能为主,通常只在软件开发者内部交流,一般而言,该版本软件的Bug较多,需要继续修改. Beta版: 该版本相对于α版已 ...

  2. 软件版本号命名规范_如何才能给文件合理命名,提高工作效率?我有3个建议!...

    不称深度指南,只愿浅度指北文件和文件夹命名有多重要,这个应该不用我说了.1 找一个文件要一个个文件夹的翻,一不小心半个小时就过去了:2 即使使用如 Everything 的快速搜索的工具,但自己的文件 ...

  3. 软件版本号命名规范_电影录音部门和剪辑部门交互规范的参考

    本文原载于公众号「后期骗局」,作者黄烁 经作者同意转载 黄烁老师非常谦虚的称之为参考,但其实这都是一线工作人员多年血泪总结出的经验教训之谈,也是大部分工业化制作的基本流程要求,每一个字背后不知有多少熬 ...

  4. 软件版本命名规范(转载)

    1. 软件版本阶段说明   * Base版: 此版本表示该软件仅仅是一个假页面链接,通常包括所有的功能和页面布局,但是页面中的功能都没有做完整的实现,只是做为整体网站的一个基础架构.    * Alp ...

  5. 软件版本命名规范详解

    1.  软件版本阶段说明 Base版: 此版本表示该软件仅仅是一个假页面链接,通常包括所有的功能和页面布局,但是页面中的功能都没有做完整的实现,只是做为整体网站的一个基础架构. Alpha版: 此版本 ...

  6. PM - 软件版本命名规范及各阶段说明

    软件版本阶段说明 Base版: 此版本表示该软件仅仅是一个假页面链接,通常包括所有的功能和页面布局,但是页面中的功能都没有做完整的实现,只是做为整体网站的一个基础架构. Alpha版: 此版本表示该软 ...

  7. APP版本号命名规范

    1.版本命名规范 软件版本号有四部分组成,第一部分为主版本号,第二部分为次版本号,第三部分为修订版 本号,第四部分为日期版本号加希腊字母版本号,希腊字母版本号共有五种,分别为base.alpha.be ...

  8. 软件系统测试版本命名,软件版本命名规范

    一.软件版本号的组成 软件版本号由四部分组成: 第一个1为主版本号, 第二个1为子版本号, 第三个1为阶段版本号, 第四部分为日期版本号加希腊字母版本号,希腊字母版本号共有5种,分别为:base.al ...

  9. 软件版本命名规范及各阶段说明

    1.  软件版本阶段说明     Base版: 此版本表示该软件仅仅是一个假页面链接,通常包括所有的功能和页面布局,但是页面中的功能都没有做完整的实现,只是做为整体网站的一个基础架构.     Alp ...

最新文章

  1. R语言构建xgboost模型:特征重要度计算及解读、改善特征重要度数据的可解释性、特征重要度可视化
  2. mybatis脱离项目逆向生成映射文件
  3. JQuery.Ajax 错误调试帮助信息
  4. SQL server 中SQL语句实战操作
  5. Linux 下关闭防火墙设置
  6. (转)git常用命令
  7. Git学习笔记—Git Flow
  8. 在XNA 3.0 项目添加声音——播放MP3或WMA声音文件
  9. 【POJ3349】Snowflake Snow Snowflakes(哈希表判重,维护一个集合)
  10. Linux系统中用stat命令查看文件的三个时间属性
  11. C语言: gotoxy函数
  12. HGET key field
  13. 推挽电源的基本工作原理、磁通不平衡问题及其解决方法
  14. hive清空外部表的三种方式
  15. RabbitMQ——01安装
  16. AlphaGo论文的译文,用深度神经网络和树搜索征服围棋:Mastering the game of Go with deep neural networks and tree search
  17. 动态菜单,根据登录用户权限返回不同菜单,登录完成跳转到不同的首页
  18. Python-docx 读写 Word 文档:读取正文、表格文本信息、段落格式、字体格式等
  19. html实现相册效果,图片播放(相册效果) - CSS实现
  20. 蚂蚁金服通讯框架学习一

热门文章

  1. 计算机图形学 ———— 扫描线多边形填充算法 (讲解)
  2. 神策数据与京东科技达成战略合作,共推数字化营销解决方案
  3. PClint报错分析实战
  4. 一个比较好的学习网站
  5. 下载telegram群组聊天消息
  6. 【Atlassian产品】Jira,Confluence,Fisheye,Crucible
  7. mongo shell教程
  8. 关于Qt Creator载入项目卡在reading project
  9. wifi加密方式WPA与WPA2的区别
  10. 浅谈数据湖的探究与调研!