美文网首页
版本命名

版本命名

作者: WEIJAVA | 来源:发表于2019-04-17 14:21 被阅读0次

    X.Y.Z 命名

    • X 非负整数 表示主版本号(Major),当 API 的兼容性变化时,X 需递增
    • Y 非负整数 表示次版本号(Minor),当增加功能时(不影响 API 的兼容性),Y 需递增
    • Z 非负整数 表示修订号(Patch),当做 Bug 修复时(不影响 API 的兼容性),Z 需递增
      如:
      第一个版本号为1.0.0,有一个接口
      User getUser(int id)
      这时候增加了根据id和手机号获取user的方法,并且去除了getUser方法
      User getUser(int id,String phone)
      此版本需要改成2.0.0 (因为不兼容老版本:加了参数或者改了返回值或者改了方法名都是算不兼容)

    后来又加了一个删除user的方法
    int deleteUser(int id)
    此版本号变为2.1.0(因为增加了功能,不影响老版本)

    后来在deleleUser方法内部改了逻辑
    此版本号变为2.1.1(因为只改了内部实现逻辑,对api无感知)

    注:

    • X, Y, Z 必须为非负整数,且不得包含前导零,必须按数值递增,如 1.9.0 -> 1.10.0 -> 1.11.0
    • 0.Y.Z 的版本号表明软件处于初始开发阶段,意味着 API 可能不稳定;1.0.0 表明版本已有稳定的API
    • 当 API 的兼容性变化时,X 必须递增,Y 和 Z 同时设置为 0;当新增功能(不影响 API 的兼容性)或者 API 被标记为 Deprecated 时,Y 必须递增,同时 Z 设置为 0;当进行 bug fix 时,Z 必须递增。

    商业软件中常见的修饰词

    • Snapshot 快照版 尚不不稳定、尚处于开发中的版本
    • Alpha 内部版 严重缺陷基本完成修正并通过复测,但需要完整的功能测试
    • Beta 测试版 相对 Alpha 有很大的改进,消除了严重的错误,但还是存在一些缺陷
    • RC 终测版 Release Candidate(最终测试),即将作为正式版发布。
    • Demo 演示版 只集成了正式版部分功能升级,无法升级
    • SP SP1 是 service pack 的意思表示升级包,相信大家在 windows 中都见过。
    • Release 稳定版 功能相对稳定,可以对外发行,但有时间限制
    • Trial 试用版 试用版,仅对部分用户发行
    • Full Version 完整版 即正式版,已发布。
    • Unregistered 未注册 有功能或时间限制的版本
    • Standard 标准版 能满足正常使用的功能的版本
    • Lite 精简版 只含有正式版的核心功能
    • Enhance 增强版 正式版,功能优化的版本
    • Ultimate 旗舰版 在标配版本升级体验感更好的版本
    • Professiona 专业版 针对更高要求功能,专业性更强的使用群体发行的版本
    • Free 自由版 自由免费使用的版本
    • Upgrade 升级版 有功能增强或修复已知 bug
    • Retail 零售版 单独发售
    • Cardware 共享版 公用许可证(IOS 签证)
    • LTS 维护版 该版本需要长期维护

    Spring 版本命名规则

    • Snapshot 快照版 尚不不稳定、尚处于开发中的版本
    • Release 稳定版 功能相对稳定,可以对外发行,但有时间限制
    • GA 正式版 代表广泛可用的稳定版(General Availability)M 里程碑版 (M 是 Milestone 的意思)具有一些全新的功能或是具有里程碑意义的版本
    • RC 终测版 Release Candidate(最终测试),即将作为正式版发布

    相关文章

      网友评论

          本文标题:版本命名

          本文链接:https://www.haomeiwen.com/subject/yeduvqtx.html