package.json 中版本号遵循什么原则

package.json 中的 version 一般遵循 语义化版本(Semantic Versioning,SemVer) 规范。

规范官网:

Semantic Versioning 2.0.0

格式:

json 复制代码
{
  "version": "1.2.3"
}

对应:

复制代码
MAJOR.MINOR.PATCH
主版本号.次版本号.修订号

1. PATCH(修订号)

复制代码
1.0.0 → 1.0.1

适用于:

  • Bug 修复
  • 性能优化
  • 文档修改
  • 内部实现调整

且:

复制代码
不会影响现有使用方式
不会破坏兼容性

例如:

复制代码
1.0.0
↓
修复表格滚动异常
↓
1.0.1

2. MINOR(次版本号)

复制代码
1.0.0 → 1.1.0

适用于:

复制代码
新增功能
新增组件
新增 API
新增配置项

同时:

复制代码
向后兼容

例如你的组件库:

复制代码
1.0.0

新增:

xml 复制代码
<TfChart />

升级:

复制代码
1.1.0

老项目无需修改代码。


3. MAJOR(主版本号)

复制代码
1.0.0 → 2.0.0

适用于:

复制代码
破坏性变更
Breaking Change

例如:

原来:

ini 复制代码
<TfTable :data="data" />

改成:

ini 复制代码
<TfTable :rows="data" />

旧代码失效:

复制代码
1.x.x
↓
2.0.0

常见版本演进

复制代码
1.0.0
1.0.1
1.0.2
1.0.3

1.1.0
1.1.1
1.1.2

1.2.0

2.0.0

0.x.x 特殊规则

很多组件库初期:

json 复制代码
{
  "version": "0.1.0"
}

表示:

复制代码
开发阶段
API 可能随时变化
不保证稳定

例如:

复制代码
0.1.0
0.2.0
0.3.0

即使有 Breaking Change,也不一定升主版本。

很多开源项目都会经历:

复制代码
0.1.0
0.5.0
0.9.0
1.0.0

预发布版本

Alpha

复制代码
1.0.0-alpha.1

表示:

复制代码
内部开发版
功能未完成

Beta

matlab 复制代码
1.0.0-beta.1

表示:

复制代码
功能基本完成
开始测试

RC

复制代码
1.0.0-rc.1

表示:

sql 复制代码
Release Candidate
发布候选版

通常:

复制代码
1.0.0-rc.1
↓
1.0.0-rc.2
↓
1.0.0

npm 常用升级命令

修订版本:

复制代码
npm version patch

1.0.0 → 1.0.1

次版本:

复制代码
npm version minor

1.0.0 → 1.1.0

主版本:

复制代码
npm version major

1.2.3 → 2.0.0

相关推荐
风骏时光牛马27 分钟前
大模型综合能力多维评测:性能、逻辑与落地表现对比
前端
liuchangng34 分钟前
React 19 + Vite 6 实战:从教材 PDF 到 866 词间隔重复单词 App
前端·react.js·pdf·vite·开源项目
Dwzun1 小时前
基于SpringBoot3+Vue3的油莎豆种植管理系统
java·前端·vue.js·spring boot·后端·python·计算机网络
小码哥_常7 小时前
一套自己部署的 IM,客户端是同一份 Flutter
前端·后端
蜗牛攻城狮9 小时前
微前端四大方案选型对比与最佳实践:qiankun、micro-app、wujie、Module Federation
前端·微前端·qiankun·前端架构·micro-app·wujie
她说可以呀10 小时前
Vue插槽
前端·javascript·vue.js
qq_4480111610 小时前
Vue + Jinja2两套模版与法冲突造成undefinedError
前端·javascript·vue.js
aixingpan11 小时前
aixingpan.cn API开发文档:前端查询夏令时和时区接口指南
前端·php
2601_9583529011 小时前
23.5×19mm 换掉一整条音频链?|A-68 集成了什么:ADC / DAC / 24.576MHz 时钟 / AEC / 波束降噪,主控仅需 6 根线
前端·音视频·ai降噪·回声消除·语音模块
志尊宝12 小时前
AI原生前端开发(039):AI辅助的Nuxt 4全栈开发
前端·vue.js·ai-native