如何定义版本号--语义化版本

前言

版本号(version number)是版本的标识号。每一个操作系统(或广义的讲,每一个软件)都有一个版本号。版本号能使用户了解所使用的操作系统是否为最新的版本以及它所提供的功能与设施。

例如在Python项目依赖中会看到 requires-python = ">= 3.10" 等依赖库对版本的要求,还有 >=<= 相结合的使用方式。

例如在前端node依赖项目,使用npm管理依赖库版本,会看到一些符合符号(示例个别):

  • ^ 兼容版本,不超过最左边非零数字,eg: ^1.2.3表示 >=1.2.3 <2.0.0
  • ~ 最接近匹配版本,eg: ~1.2.3表示 >=1.2.3 <1.3.0
  • > 大于当前版本

业界在定义版本的时候,都会遵循一定的规范,否则当出现^或者~等符号的时候,依赖库有了不兼容升级,才能保证被引用服务不会出现问题。

一个规范的版本定义非常重要。

语义化版本2.0.0

官网:https://semver.org

版本格式:主版本号.次版本号.修订号,版本号递增规则如下:

  • 主版本号:当你做了不兼容的 API 修改,
  • 次版本号:当你做了向下兼容的功能性新增,
  • 修订号:当你做了向下兼容的问题修正。

先行版本号及版本编译信息可以加到“主版本号.次版本号.修订号”的后面,作为延伸。

语义化版本控制的规范是由 Gravatars 创办者兼 GitHub 共同创办者 Tom Preston-Werner 所建立,本文不作更多描述,请移步官网。

相关推荐

  1. 如何定义版本号--语义版本

    2024-07-14 12:00:02       23 阅读
  2. npm 语义版本控制

    2024-07-14 12:00:02       32 阅读
  3. 如何引用R语言版本以及R包版本

    2024-07-14 12:00:02       54 阅读
  4. 语义版本控制:软件工程的实用之道

    2024-07-14 12:00:02       32 阅读
  5. docker镜像版本号规则定义

    2024-07-14 12:00:02       44 阅读
  6. 如何识别bootstrap版本

    2024-07-14 12:00:02       44 阅读
  7. Elasticsearch如何选择版本

    2024-07-14 12:00:02       35 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-14 12:00:02       70 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-14 12:00:02       74 阅读
  3. 在Django里面运行非项目文件

    2024-07-14 12:00:02       62 阅读
  4. Python语言-面向对象

    2024-07-14 12:00:02       72 阅读

热门阅读

  1. IOS热门面试题(一)

    2024-07-14 12:00:02       18 阅读
  2. Set和Map的用法

    2024-07-14 12:00:02       25 阅读
  3. 一阶低通滤波(IIR)

    2024-07-14 12:00:02       22 阅读
  4. 12_Shell流程控制

    2024-07-14 12:00:02       27 阅读
  5. GESP:2024-6月等级5-T1-黑白格

    2024-07-14 12:00:02       24 阅读
  6. Postman API版本控制:最佳实践指南

    2024-07-14 12:00:02       22 阅读
  7. 数仓工具—Hive基础之临时表及示例

    2024-07-14 12:00:02       23 阅读
  8. 用C在安卓手机上开发

    2024-07-14 12:00:02       29 阅读
  9. sqlserver 表大小查询

    2024-07-14 12:00:02       23 阅读