📜  语义版本控制简介

📅  最后修改于: 2021-10-19 05:17:01             🧑  作者: Mango

语义版本控制(也称为SemVer )是一种在过去几年中不断发展的版本控制系统。对于软件开发人员、发布经理和消费者来说,这一直是一个问题。由于几乎每天都在构建新的插件、插件、库和扩展,因此拥有对软件开发项目进行版本控制的通用方式是跟踪软件运行情况的最佳方式。

语义版本控制是一个XYZ格式的 3 部分数字,其中:

  • X 代表主要版本。
  • Y 代表次要版本。
  • Z 代表补丁。

所以, SemVer 的形式是Major.Minor.Patch

工作: SemVer 的目标是为快速移动的软件发布目标的管理带来一些理智。如上所述,需要 3 个数字,即主要、次要和补丁来标识软件版本。例如,如果我们使用 5.12.2 版本,那么它的主版本为 5,次要版本为 12,补丁版本为 2。下面给出了您应该增加 X、Y 和 Z 值的场景。

  • 破坏现有 API 时,提高X 的值。
  • 以向后兼容的方式实现新功能时,增加Y 的值。
  • 修复错误时提高 Z的值。

有效标识符在集合[A-Za-z0-9] 中,不能为空。通过在 SemVer 序列的末尾附加一个连字符来标识预发布元数据。因此,1.0.0 版的预发布版本可能是 1.0.0-alpha.1。然后,如果需要另一个构建,它将变成 1.0.0-alpha.2,依此类推。请注意,名称不能包含前导零,但允许在预发布标识符的名称中使用连字符。

SemVer 的优点:

  • 您可以跟踪软件开发阶段的每个过渡。
  • 版本控制可以完成向开发人员解释发生了哪些类型的更改以及应该在软件中进行的可能更新的工作。
  • 它有助于保持事物清洁和有意义。
  • 它可以帮助可能将您的项目用作依赖项的其他人。

要记住的要点:

  • 第一个版本从 0.1.0 开始而不是 0.0.1,因为没有发生错误修复,而是我们从一组功能作为项目的初稿开始。
  • 在 1.0.0 之前只是开发阶段,您专注于完成工作。
  • SemVer 不包括标记为0.*.* 的库。第一个稳定版本是 1.0.0。