

Amazon CodeCatalyst は新規のお客様には提供されなくなりました。既存のお客様は、通常どおりサービスを引き続き使用できます。詳細については、「[CodeCatalyst から移行する方法](migration.md)」を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# npm タグ処理
<a name="packages-npm-tags"></a>

npm レジストリは *タグ* をサポートしており、これはパッケージバージョンの文字列エイリアスです。バージョン番号の代わりにタグを使用して、エイリアスを指定できます。例えば、複数の開発ストリームを持つプロジェクトがあり、ストリームごとに異なるタグ (`stable`、`beta`、`dev`、`canary` など) を使用する場合があります。詳細については、*npm Docs* 上の「[dist-tag](https://docs.npmjs.com/cli/dist-tag)」を参照してください。

デフォルトでは、npm は `latest` タグを使用して、パッケージの現在のバージョンを識別します。`npm install pkg` (`@version` または `@tag` 指定子なし) は latest タグをインストールします。プロジェクトでは通常、安定版リリースバージョンに対してのみ、latest タグが使用されます。他のタグは、不安定版またはプレリリースバージョンに使用されます。

## npm クライアントでタグを編集する
<a name="editing-tags-with-the-npm-client"></a>

 3 つの `npm dist-tag` コマンド (`add`、`rm`、`ls`) は、CodeCatalyst パッケージリポジトリで[デフォルトの npm レジストリ](https://registry.npmjs.com/)内と同様に機能します。

## npm タグと上流リポジトリ
<a name="packages-tags-and-upstreams"></a>

`npm` がパッケージのタグを要求し、そのパッケージのバージョンがアップストリームリポジトリにも存在する場合、CodeCatalyst はタグをマージしてからクライアントに返します。例えば、`R` という名前のリポジトリには、`U` という名前のアップストリームリポジトリがあります。次の表は、両方のリポジトリに存在する `web-helper` という名前のパッケージのタグを示しています。


****  

| Repository | パッケージ名 | パッケージタグ | 
| --- | --- | --- | 
|  R  |  `web-helper`  |   *latest* (バージョン 1.0.0 のエイリアス)  | 
|  U  |  `web-helper`  |   *alpha* (バージョン 1.0.1 のエイリアス)  | 

この場合、npm クライアントがリポジトリ `R` の `web-helper` パッケージのタグを取得すると、*latest* と *alpha* 両方のタグが返されます。タグが指すバージョンは変更されません。

アップストリームリポジトリとローカルリポジトリの両方で同じタグが同じパッケージに存在する場合、*最後に更新された*タグが使用されます。例えば、*ウェブヘルパー* 上のタグが次のように変更したとします。


****  

| Repository | パッケージ名 | パッケージタグ | 最終更新日 | 
| --- | --- | --- | --- | 
|  R  |  `web-helper`  |   *latest* (バージョン 1.0.0 のエイリアス)  |  2023 年 1 月 1 日  | 
|  U  |  `web-helper`  |   *latest* (バージョン 1.0.1 のエイリアス)  |  2023 年 6 月 1 日  | 

この場合、npm クライアントがリポジトリ `R` からパッケージ *web-helper* のタグを取得すると、*latest* タグによってバージョン *1.0.1* に別名が付けられます。これが最後に更新されているためです。これにより、アップストリームリポジトリにあり、ローカルリポジトリにまだ存在していない新しいパッケージバージョンを、`npm update` を実行して簡単に使用できるようになります。