当前位置:网站首页>Version number naming convention
Version number naming convention
2022-06-21 12:13:00 【Summer foam and light rain】
Write it at the front :
The purpose of this article is to summarize backup 、 For future reference , Because it's a personal summary , If there is any wrong , Welcome to correct ; in addition , Most of the content comes from the Internet 、 Books 、 And all kinds of manuals , In case of infringement, please inform , Immediately delete the post and apologize .
original text :http://wsfdl.com/devops/2016/09/27/%E7%89%88%E6%9C%AC%E5%8F%B7.html#
First look at the version numbers of some common software :
- Linux Kernel: 0.0.1,1.0.0,2.6.32,3.0.18…, If use X.Y.Z Express , Then even number Y Stable version , Odd number Y Represents the development version .
- Windows:windows 98,windows 2000,windows xp,windows 7…, The biggest feature is disorder , No rules .
- SSH Client:0.9.8.
- OpenStack:2014.1.3,2015.1.1.dev8.
And you can see that , Different software version numbers have different styles , As the scale of the system grows , The more software you rely on , If the software doesn't follow a standard naming style , Easy to cause Dependency Hell. So when we release the version , The naming of the version number needs to follow some rules , among Semantic Versioning 2.0.0 A set of simple rules and conditions are defined to restrict the configuration and growth of version number . This article is based on Semantic Versionning 2.0.0 and Semantic Versioning 3.0.0 The selective arrangement publishes this number naming rule guide .
Version number naming rules guide
The format of the version number is X.Y.Z( also called Major.Minor.Patch), The rule of increment is :
- X Indicates the major version number , When API When the compatibility of ,X Need to increase .
- Y Indicates the minor version number , When adding features ( No effect API The compatibility of ),Y Need to increase .
- Z Indicates revision number , treat as Bug When repairing ( No effect API The compatibility of ),Z Need to increase .
The detailed rules are as follows :
- X, Y, Z Must be a non negative integer , And must not contain leading zeros , It has to be incremented by a number , Such as 1.9.0 -> 1.10.0 -> 1.11.0
- 0.Y.Z The version number of indicates that the software is in the initial development stage , signify API It could be unstable ;1.0.0 Indicates that the version has a stable API.
- When API When the compatibility of ,X Must be incremented ,Y and Z Also set to 0; When new features are added ( No effect API The compatibility of ) perhaps API Marked as
Deprecated when ,Y Must be incremented , meanwhile Z Set to 0; When doing bug fix when ,Z Must be incremented . - Advance version number (Pre-release) It means that the version is unstable , There may be compatibility issues , The format for :X.Y.Z.[a-c][ Positive integer ], Such as 1.0.0.a1,1.0.0.b99,1.0.0.c1000.
- The development version number is often used for CI-CD, The format is X.Y.Z.dev[ Positive integer ], Such as 1.0.1.dev4.
- Version numbers are sorted by comparing major version numbers in turn 、 Values of minor version number and revision number , Such as 1.0.0 < 1.0.1 < 1.1.1 < 2.0.0; For antecedent version number and development version number , Yes :1.0.0.a100 < 1.0.0,2.1.0.dev3 < 2.1.0; When there are letters , With ASCII To compare , Such as 1.0.0.a1 < 1.0.0.b1.
- Be careful : Once the version is released , Its contents shall not be modified , Any changes must be released in a new version !
Some of the embellishments
- alpha: Internal version
- beta: The beta
- demo: Demo version
- enhance: Enhanced version
- free: Free Edition
- full version: Full version , The official version
- lts: Long term maintenance version
- release: Distribution version
- rc: It's going to be released as an official version
- standard: The standard version
- ultimate: Flagship Edition
- upgrade: Upgraded version
边栏推荐
- 南京大学 静态软件分析(static program analyzes)-- introduction 学习笔记
- Corrigendum to 138 sets of reference solutions to the real problems of Higher Algebra in 2022
- Is it safe to hit new bonds with one click? Is it reliable?
- 自动弹出 微信授权登录窗口
- Adapter power supply automatic test equipment | introduction to charger ATE test system nsat-8000
- [comprehensive pen test] sword finger offer II 114 Alien dictionary
- Guangdong issues product testing coupons, and consumers also share
- Record the errors encountered in the pytorch training model once
- harmonyos培训一
- HMS core machine learning service ID card identification function to achieve efficient information entry
猜你喜欢

Flink tuning (I) resource tuning and back pressure analysis

Jenkins configures scheduled tasks through build periodically

Quantitative research on heterogeneous communities 4 rate of change with bands

STM32開發之 VS Code + gcc環境編譯

RPC(远程过程调用协议)

蜜雪冰城(已黑化)

HMS Core机器学习服务身份证识别功能,实现信息高效录入

i.MX - RT1052时钟及锁相环(PLL)分析

Customization of power aging test system | overview of charging pile automatic test system nsat-8000

Knowledge points: several special wiring methods for PCB
随机推荐
Vs code + GCC environment compilation for STM32 development
『忘了再学』Shell流程控制 — 36、for循环介绍
SSD [target detection]
Anchor of SSD_ Box calculation
uniapp-微信小程序获取定位授权
1108. IP address invalidation
External-Attention-tensorflow(更新中)
Adapter power supply automatic test equipment | introduction to charger ATE test system nsat-8000
Corrigendum to 138 sets of reference solutions to the real problems of Higher Algebra in 2022
tensorflow中使用的一些函数
STM32笔记之 PWM(脉宽调制)
[yolov5s target detection] opencv loads onnx model for reasoning on GPU
What is the relationship between CSC securities and qiniu school? Is it safe to open a brokerage account
Summary of UART problems in stm32cubemx
Rectangular coverage area
Ansible operating instructions for configuring SSH authentication free for the first time
MySQL-DQL
【综合笔试题】剑指 Offer II 114. 外星文字典
Golang implements redis (9): use geohash to search people nearby
创建型模式 - 单例模式