npm 版本號辨別

前言

這邊紀錄一下如何辨別 npm 版本號,避免自己忘記怎麼看板本號…

範例

這邊範例將會使用 hexo 的 package.json 來做介紹

package.json

拿這一段做介紹

1
"hexo": "^3.8.0",

通常第一個數字是重大的改版 3,一般來講 hexo 2.x.x 與 3.x.x 就會有可能是什麼重大的改版

  • 第一個數字是主要的版本號 → 3
  • 第二個數字是次要版本號 → 8
  • 第三個數字是 Bug 的修正號 → 0

那箭頭 (^) 呢?

1
"hexo": "^3.8.0",

這代表的意思是它會自動更新第二及第三數字的版本更新,例如 3.7.2 更新至 3.8.0,但是它並不會更新第一個主要版本號碼,因為通常第一個數字的更新都是屬於重大改版,隨意更新可能會導致 GG

那如果是蚯蚓符號(~)呢?

1
"hexo": "~3.8.0",

這個符號的意思代表著,我只更新 bug 的修正,也就是第三個數字。

如果沒有箭頭 or 蚯蚓,就代表你只安裝這個版本。

另外還有一個特別的東西,也就是 latest,意旨永遠都更新到最新,但是一般來講很少有開發者使用,因為這樣子會導致出現一些奇怪的問題。

1
"hexo": "latest",
可以給點牡蠣。
Google AD