本文討論的是一個(gè)nodejs工具,你需要對(duì)node/npm有最基本的了解。
Semantic Version是當(dāng)下被大多數(shù)軟件/庫使用的一套版本命名規(guī)范。
Semver是一個(gè)專門分析Semantic Version(語義化版本)的工具,“semver”其實(shí)就是這兩個(gè)單詞的縮寫。Npm使用了該工具來處理版本相關(guān)的工作。
semver可以作為一個(gè)node模塊,同時(shí)也可以作為一個(gè)命令行工具。功能包括:
- 比較兩個(gè)版本號(hào)的大小
- 驗(yàn)證某個(gè)版本號(hào)是否合法
- 提取版本號(hào),例如從“=v1.2.1”體取出"1.2.1"
- 分析版本號(hào)是否屬于某個(gè)范圍或符合一系列條件
- 等等...
安裝
npm install semver
# 若希望用作命令行工具
npm install -g semver
使用
下面只闡述在nodejs里的用法;若想了解命令行的使用可查看項(xiàng)目Readme。
// 計(jì)較兩個(gè)版本號(hào)的大小
semver.gt('1.2.3', '2.3.4') // false
semver.lt('1.2.3', '2.3.4') // true
// 驗(yàn)證版本號(hào)是否合法,返回null即不合法
semver.valid('1.2.3') // '1.2.3'
semver.valid('a.b.c') // null
// 提取版本號(hào)
semver.clean(' =v1.2.3 ') // '1.2.3'
semver.major('1.2.3') // '1'
semver.minor('1.2.3') // '2'
semver.patch('1.2.3') // '3'
Semver的功能遠(yuǎn)遠(yuǎn)不止這些,更詳細(xì)的內(nèi)容可查閱項(xiàng)目Readme。