软件版本号规范与命名原则(node.js与package.json依赖包规范)

举报
小哈里 发表于 2022/05/23 23:09:39 2022/05/23
【摘要】 文章目录 1、软件版本号2、版本号的修饰词3、大厂常用的版本号4、版本号的阶段标识5、(node.js中的)^和~区别 1、软件版本号 一般来讲大部分的软件版本号分3段,比如 A...

1、软件版本号

一般来讲大部分的软件版本号分3段,比如 A.B.C

  • A 表示大版本号,一般当软件整体重写,或出现不向后兼容的改变时,增加A,A为零时表示软件还在开发阶段
  • B 表示功能更新,出现新功能时增加B
  • C 表示小修改,如修复bug,只要有修改就增加C

2、版本号的修饰词

  • 日期版本号:表示发布日期
  • alpha: 内部测试版,bug较多,主要是修改和实现功能
  • beta: 测试版,大部分bug已修,主要是修改UI和小bug等
  • rc: 即将作为正式版发布
  • lts: 长期维护
  • release版: 该版本意味“最终版本”,在前面版本的一系列测试版之后,终归会有一个正式版本,是最终交付用户使用的一个版本。该版本有时也称为标准版。

3、大厂常用的版本号

微软

RC(Release Candidate):候选版本,这一版本不会增加新功能,多要进行Debug
GA(General Available):正式发布版本,这个版本就是正式的版本
RTM(Release to Manufacture):给工厂大量生产的压片版本,与正式版内容一样
OEM(Original Entrusted Manufacture):给计算机厂商的出场销售版本,不零售只预装
RVL:号称是正式版,其实RVL根本不是版本的名称。它是中文版/英文版文档破解出来的
EVAL:而流通在网络上的EVAL版,与“评估版”类似,功能上和零售版没有区别
RTL(Retail):零售版是真正的正式版,正式上架零售版

谷歌与chrome

GM(Gold Master):正式版前最后一个测试版,其实也就是正式版
Chromium:开源版本,迭代速度极快,数小时就会有新版本,有很多新功能,等待验证后会移植到Chrome
Canary:迭代速度相对于Chromium版稍慢一些,功能非常新但未经过验证,同时崩溃的概率非常高
Dev:基于Chromium开发,每周出新功能,并且这些功能还有一定的筛选,另外还修复了一些Bug和不稳定因素
Beta:基于Dev版,Chrome会基于这一版本进行改进,一般按月更新,功能更加完善
Stable:稳定版本,也就是Chrome的正式版本,这一版本基于Beta版,已知Bug都被修复,一般情况下,更新比较慢

4、版本号的阶段标识

软件的每个版本中包括11个阶段,详细阶段描述如下:

阶段名称 阶段标识
需求控制 a
设计阶段 b
编码阶段 c
单元测试 d
单元测试修改 e
集成测试 f
集成测试修改 g
系统测试 h
系统测试修改 i
验收测试 j
验收测试修改 k

5、(node.js中的)^和~区别

当我们查看项目配置文件package.json中已安装的库的时候,会发现他们的版本号之前都会加一个符号,有的是插入符号(^),有的是波浪符号(~)

  • 当使用npm install 安装包时,默认会在包的版本号前面添加^符号
  • 当在包的版本号前面插入波浪符号~时,表示当更新包时,锁定次版本,将补丁版本更至最新;例如 ~1.15.2 ,表示 >=1.15.2 && <1.16.0;
  • 当在包的版本号前面插入符号^时,表示当更新包时,锁定主版本,将次版本更到最新;例如 \ ^3.3.4 ,表示 >=3.3.4 && <4.0.0

文章来源: gwj1314.blog.csdn.net,作者:小哈里,版权归原作者所有,如需转载,请联系作者。

原文链接:gwj1314.blog.csdn.net/article/details/124924316

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。