摘要:今天在此向大家推薦一種非常流行的版本號命名規則語義化版本。語義化版本約定修訂版本號代表在和之前接口不變的前提下修正了。就是專門用于語義化版本號檢查的庫,其也是語義化版本標準的制定者。
NPM酷庫,每天兩分鐘,了解一個流行NPM庫。
軟件的命運就是不斷維護、更新、迭代,所以我們用版本號來區分一個軟件的不同時期和形態,版本號的命名方式有各種各樣,有的以小數表示(幾點幾),有的以日期表示,有的以代碼提交Hash表示等等。
今天在此向大家推薦一種非常流行的版本號命名規則:語義化版本。
所有NPM包都是用語義化版本號管理的,其格式如下
主版本號.次版本號.修訂號
比如,2.1.12,代表主版本號為2,次版本號是1,修訂版本號是12。語義化版本約定:
修訂版本號代表在和之前接口不變的前提下修正了BUG。
次版本號變化說明產品增加了新特性,接口可能已經發生了變化。
主版本號變化代表產品已經發生了很大的改變,與之前版本不兼容。
semver在項目中,我們也許會在某些情況下對版本號進行檢查、比較等操作。比如一個典型案例,在服務端判斷APP客戶端是否需要升級。
semver 就是專門用于語義化版本號檢查的庫,其也是語義化版本標準的制定者。
const semver = require("semver") semver.valid("1.2.3") // "1.2.3" semver.valid("a.b.c") // null semver.clean(" =v1.2.3 ") // "1.2.3" semver.satisfies("1.2.3", "1.x || >=2.5.0 || 5.0.0 - 7.2.3") // true semver.gt("1.2.3", "9.8.7") // false semver.lt("1.2.3", "9.8.7") // true參考資料
https://github.com/npm/node-s...
https://semver.org/lang/zh-CN/
歡迎關注公眾號:梁興臣每天了解一個NPM庫,一年后成為Node.js高手
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/92750.html
摘要:酷庫,每天兩分鐘,了解一個流行庫。在酷庫中,我們了解到了數據模式驗證,以及庫。是語義化的對象數據模式驗證庫,所謂語義化,是指其方法名能夠明確表達其含義。 NPM酷庫,每天兩分鐘,了解一個流行NPM庫。· 在NPM酷庫042中,我們了解到了JSON Schema數據模式驗證,以及ajv庫。今天我們來學習另一個對象數據驗證的庫joi。 joi joi 是語義化的對象數據模式驗證庫,所謂語義...
摘要:為什么為什么不是為什么不是為什么不是為什么不是嚴格的指導原則有助于為版本號提供意義。此外,如果你有打破當前的,這同樣表示你需要升級你的主版本號了。 前提 何為版本?版本即語義版本控制( Semantic version 后面簡稱為 SemVer )是一種版本控制系統,在過去幾年中一直在不斷發展。 隨著每天都在構建新的插件,插件,擴展和庫,擁有通用的軟件開發項目版本化方法是一件好事,可以...
check-versions.js //定制控制臺日志的輸入樣式 var chalk = require(chalk) // 加載語義化版本測試庫 var semver = require(semver) // 引入package.json文件 var packageConfig = require(../package.json) function exec(...
摘要:可以通過查詢對映模塊的信息安裝機制輸入命令并敲下回車后,會經歷如下幾個階段以為例執行工程自身當前工程如果定義了鉤子此時會被執行。在以前會嚴格按照依賴樹的結構進行安裝,因此會造成模塊冗余。當發現有重復模塊時,則將其丟棄。 使用NPM安裝的時候會經常出現包沖突(比如多個主模塊的子模塊版本不一致等),導致在開發過程中會遇到各種或大或小的問題。所有在這會介紹以下內容: NPM 主要安裝方式 ...
閱讀 2804·2021-11-24 09:39
閱讀 2777·2021-09-23 11:45
閱讀 3404·2019-08-30 12:49
閱讀 3352·2019-08-30 11:18
閱讀 1908·2019-08-29 16:42
閱讀 3344·2019-08-29 16:35
閱讀 1321·2019-08-29 11:21
閱讀 1912·2019-08-26 13:49