yarn tag

增加、刪除或列出套件的標籤

什麼是標籤?

發佈標籤 (又名 dist-tags) 是個標記你的套件版本的方式,使用者可以使用標籤代替版本號來安裝你的軟體。

例如: 你有個stable 版canary 版,你可以利用標籤讓使用者可用以下方式安裝:

yarn add your-package-name@stable
yarn add your-package-name@canary

不同的標籤有不同的含義:

  • latest: 目前套件的版本
  • stable: 最新的穩定版,通常會與 latest 相同除非你有提供長期支援 (LTS)
  • beta: 在成為 latest 和(或) 穩定版的版本,用來發佈即將發佈的更新
  • canary: “Nightly” 或預發佈版,如果你的專案時常更新且很多人使用,你可以用這來發佈更不穩定的版本
  • dev:有時你想用 npm 來測試你目前仍然未完成的工作時這很有用

有些專案會使用他們認為適當的標籤來取代標準的標籤,比如 nextbeta 是相同的。

雖然這些是公認的”標準的”標籤,但其中只有 latest 確實代表使用者在沒有指定版本號時安裝的版本。

注意事項

你不能同時使用版本號與標籤,因為它們的使用方法一樣:

yarn add your-package-name@<version>
yarn add your-package-name@<tag>

你不能使用任何符合 semver 的字句做為標籤,例如:你不能把標籤命名為 v2.3,因為它在 semver 裡意味著 >=2.3.0 <2.4.0

總而言之,應避免使用看起來像版本號的標籤,因為它們只會造成你的使用者的混淆。

指令

yarn tag add <package>@<version> <tag>

<package><version> 加上名為 <tag> 的標籤。

yarn tag remove <package> <tag>

<package> 刪除已經不再使用的名為 <tag> 的標籤。

附註: 你不需要在刪除一個標籤前把它移動到另一個版本,也最好別這麼做。

yarn tag list [<package>]

列出 <package> 的所有標籤,如果沒有指定 <package> 則預設會使用你目前工作目錄下的套件。