本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
npm 標籤處理
npm 登錄檔支援標籤,這些標籤是套件版本的字串別名。您可以使用標籤提供別名,而不是使用版本號碼。例如,您有一個具有多個開發串流的專案,而且每個串流使用不同的標籤 (例如 stable
、beta
、dev
、canary
)。如需詳細資訊,請參閱 npm 文件上的 Dist-tag
根據預設,npm 會使用 latest
標籤來識別套件的目前版本。 npm install
(不含 pkg
@
或 version
@
規格符) 會安裝最新的標籤。一般而言,專案僅使用最新的標籤來提供穩定的發行版本。其他標籤用於不穩定或預先發行版本。tag
使用 npm 用戶端編輯標籤
三個npm dist-tag
命令 (add
、 rm
和 ls
) 在 CodeCatalyst 套件儲存庫中的運作方式與在預設 npm 登錄
npm 標籤和上游儲存庫
當 npm
請求套件的標籤和該套件的版本也存在於上游儲存庫時,CodeCatalyst 會在將標籤傳回用戶端之前合併標籤。例如,名為 的儲存庫R
具有名為 的上游儲存庫U
。下表顯示兩個儲存庫中存在web-helper
的名為 套件的標籤。
儲存庫 | 套件名稱 | 套件標籤 |
---|---|---|
R |
|
最新 (1.0.0 版的別名) |
U |
|
alpha (1.0.1 版的別名) |
在此情況下,當 npm 用戶端從儲存庫 擷取web-helper
套件的標籤時R
,它會同時接收最新的標籤和字母標籤。標籤指向的版本不會變更。
當上游和本機儲存庫中的相同套件上存在相同的標籤時,CodeCatalyst 會使用上次更新的標籤。例如,假設 webhelper 上的標籤已修改為如下所示。
儲存庫 | 套件名稱 | 套件標籤 | 上次更新 |
---|---|---|---|
R |
|
最新 (1.0.0 版的別名) |
2023 年 1 月 1 日 |
U |
|
最新 (1.0.1 版的別名) |
2023 年 6 月 1 日 |
在此情況下,當 npm 用戶端從儲存庫 擷取套件 Web-helper 的標籤時R
,最新的標籤會別名為 1.0.1 版,因為它上次更新。這可讓您藉由執行 ,在尚未存在於本機儲存庫的上游儲存庫中輕鬆使用新的套件版本npm update
。