Semver 比较器

比较、验证和排序语义版本字符串。检查版本是否满足 npm 风格的范围如 ^1.0.0 或 >=2.0.0。免费在线工具。

在上方输入两个版本字符串进行比较。

Share this tool

Help others discover Semver Comparator

关于 Semver 比较器

工作原理

  • 输入两个 semver 字符串(如 1.2.3 和 2.0.0)进行比较
  • 使用范围检查器测试版本是否满足 npm 风格的范围
  • 粘贴版本列表进行批量排序和验证
  • 解析视图将任何版本分解为主版本、次版本、修订版本和预发布部分

常见用例

  • 检查依赖更新是主版本、次版本还是补丁版本更改
  • 验证包版本是否满足对等依赖范围
  • 按版本排序发布历史或更新日志
  • 交互式学习 semver 规范

常见问题

什么是语义版本控制(semver)?

语义版本控制是一种版本号遵循 主版本.次版本.修订版本 格式的方案。主版本用于不兼容的更改,次版本用于新的向后兼容功能,修订版本用于向后兼容的错误修复。广泛用于 npm、Cargo 和许多其他包管理器。

如何比较两个版本号?

在比较选项卡中输入两个版本字符串。工具将告诉您哪个版本更大,或者它们是否相等。比较遵循 semver 规范:先比较主版本,然后是次版本,然后是修订版本,最后是预发布标识符。

什么是 semver 范围?

semver 范围是匹配一组版本的表达式。常用范围操作符包括 ^(兼容)、~(近似等价)、>=、<=、>、< 和 =。范围可以使用空格(AND)或 ||(OR)组合。

semver 中 ^(脱字符)操作符是什么意思?

脱字符 ^ 操作符匹配与指定版本兼容的版本。对于 ^1.2.3 匹配 >=1.2.3 <2.0.0。对于 ^0.2.3 匹配 >=0.2.3 <0.3.0。它是 npm 使用的默认范围操作符。

semver 中 ~(波浪符)操作符是什么意思?

波浪符 ~ 操作符匹配补丁级别的更改。~1.2.3 匹配 >=1.2.3 <1.3.0。它比脱字符更严格,在需要锁定特定次版本同时允许补丁更新时很有用。

如何比较预发布版本?

预发布版本(如 1.0.0-alpha、1.0.0-beta.1)的优先级低于相关的正式版本。例如,1.0.0-alpha < 1.0.0。预发布标识符逐字段比较。

构建元数据会影响版本比较吗?

不会。根据 semver 规范,构建元数据(+ 之后的部分,如 1.0.0+build.1)在版本比较和优先级计算中被忽略。仅在构建元数据上有差异的两个版本被视为相等。

如何对版本列表进行排序?

切换到排序和验证选项卡,粘贴版本列表(每行一个),然后选择升序或降序。工具将排序所有有效的 semver 字符串,并单独列出无效条目。

什么算作有效的 semver 字符串?

有效的 semver 字符串必须遵循 主版本.次版本.修订版本 格式,每部分都是没有前导零的非负整数。可选地可以包含预发布后缀(如 -alpha.1)和构建元数据(如 +001)。

这个工具是免费的吗?

是的,Semver 比较器完全免费且在浏览器中运行。不会将任何数据发送到服务器——所有比较和验证均在客户端进行。

Share ToolsZone

Help others discover these free tools!

分享此页面

Semver 比较器 | 比较和验证版本号