npm模塊管理-區分測試包和穩定包

最近項目模塊遷移到npm上進行管理,由於npm倉庫是線上線下公用的,因此模塊中新開發的功能怎麼進行測試?若是直接npm publish,會致使影響線上環境,然而測試代碼影響線上代碼是咱們最不想看到的。通過一番調查,發現npm官方已經考慮到你們的這種狀況了,能夠經過npm中的tag對這些包進行管理。npm

開始以前,簡單介紹一下tag版本號的區別:bash

  • 版本號:咱們經常使用的版本號命名方式爲1.1.1,即Semver規範:semver.org/,不一樣位置的數字表明不一樣版本,可是這樣就須要人工記憶哪一個版本是測試的,哪一個版本是線上的,很容易出錯
  • dist-tag:不一樣於上面的版本號,dist-tag(Distribution tags) 提供了一個可讀性更高的分發標籤。例如將包分發爲devbugfix等,而後下載時指定tag便可,如:npm install my-package@dev

如何使用dist-tag?

官方文檔:docs.npmjs.com/cli/dist-ta…測試

npm dist-tag add <pkg>@<version> [<tag>]  # 爲已發佈的某個版本號添加分發tag
npm dist-tag rm <pkg> <tag> # 刪除某個版本的tag
npm dist-tag ls <pkg> # 顯示pkg的全部tag
複製代碼

在發佈的時候可使用npm publish --tag <tag>spa

在測試環境安裝的時候就能夠指定tag安裝,如 npm install my-package@devcode

等測試經過以後,將版本號的tag改成latest開發

相關文章
相關標籤/搜索