一文搞懂项目发版

246 阅读2分钟

概述

在软件开发过程中,我们总要面对一个问题就是版本定义,如何定义一个标准的版本,每个版本定义的意义是什么,今天小编就带大家做一个揭晓。

版本号

为了在软件版本号中包含更多意义,反映代码所做的修改,产生了语义化版本,软件的使用者能从版本号中推测软件做的修改。版本号定义采用了semver规范作为标准规范。版本号由三部分组成:主版本号次版本号补丁版本号。变更不同的版本号,代表不同的意义:

  • 主版本号(major):软件做了不兼容的变更(breaking change 重大变更)
  • 次版本号(minor):添加功能或者废弃功能,向下兼容
  • 补丁版本号(patch):bug 修复,向下兼容

版本

有时候为了表达更加确切的版本,还会在版本号后面添加标签或者扩展,来说明是预发布版本或者测试版本等。

  • 【demo】:可能用于验证问题的版本
  • 【dev】:开发阶段用的,bug多,体积大,功能不完善
  • 【alpha】:预览版或者内部测试版,一半不向外发布,会有很多bug,一半只有测试人员使用
  • 【beta】:测试版或者公共测试版,这个极端版本会一直加入新功能,在alpha版本之后推出
  • 【gamma】:较alpha和beta版本有很大改进,与稳定版本相差无几,用户可使用
  • 【trial】:本软件通常豆油时间限制,过期之后用户如果希望继续使用,一半得缴纳一定费用进行注册购买。有些试用版软件还在功能上做了限制。
  • 【csp】:内部安全版本,JS库常用
  • 【rc】:最终测试版本,可能成为最终产品的候选版本,古国未出现问题则可以发布为正式版本
  • 【latest】:最新版本,不指定版本和标签
  • 【stable】:稳定版