Node.js用のYarnPackageManagerをインストールして使用する方法
序章
Yarn は、 Node.js のパッケージマネージャーであり、速度、セキュリティ、一貫性に重点を置いています。 もともとは、人気のあるNPMパッケージマネージャーのいくつかの問題に対処するために作成されました。 その後、2つのパッケージマネージャーはパフォーマンスと機能の点で収束しましたが、Yarnは、特にReact開発の世界で人気があります。
ヤーンのユニークな機能のいくつかは次のとおりです。
- プロジェクトごとのキャッシュメカニズム。これにより、後続のインストールとビルドを大幅に高速化できます。
- インストールされたライブラリの構造が常に同じであることを保証する、一貫性のある決定論的なインストール
- すべてのパッケージのチェックサムテストにより、それらの整合性を検証します
- モノリポジトリ(単一のソースコードリポジトリで開発された複数のプロジェクト)でのYarnの使用を容易にする「ワークスペース」
このチュートリアルでは、Yarnをグローバルにインストールし、特定のプロジェクトにYarnを追加し、いくつかの基本的なYarnコマンドを学習します。
前提条件
Yarnパッケージマネージャーをインストールして使用する前に、Node.jsをインストールする必要があります。 Node.jsがすでにインストールされているかどうかを確認するには、ローカルコマンドラインターミナルに次のコマンドを入力します。
node -v
v12.16.3などのバージョン番号が印刷されている場合は、Node.jsがインストールされています。 command not foundエラー(または同様の言い回し)が発生した場合は、続行する前にNode.jsをインストールしてください。
Node.jsをインストールするには、 Ubuntu 、 Debian 、 CentOS 、またはmacOSのチュートリアルに従ってください。
Node.jsをインストールしたら、手順1に進んでYarnパッケージマネージャーをインストールします。
ステップ1—Yarnをグローバルにインストールする
Yarnには、JavaScriptプロジェクトにそれ自体をインストールして実行する独自の方法があります。 最初にyarnコマンドをグローバルにインストールし、次にグローバルyarnコマンドを使用して、特定のローカルバージョンのYarnをプロジェクトディレクトリにインストールします。 これは、プロジェクト(およびプロジェクトの自動テストおよび展開ツールのすべて)で作業するすべての人が、一貫性のない動作と結果を回避するために、まったく同じバージョンのyarnを実行していることを確認するために必要です。
Yarnのメンテナは、すべてのNode.jsインストールにデフォルトで含まれているNPMパッケージマネージャーを使用して、Yarnをグローバルにインストールすることをお勧めします。 これを行うには、-gフラグとnpm installを使用します。
sudo npm install -g yarn
パッケージのインストール後、yarnコマンドに独自のバージョン番号を出力させます。 これにより、正しくインストールされたことを確認できます。
yarn --version
Output1.22.11
yarnコマンドがグローバルにインストールされたので、それを使用してYarnを特定のJavaScriptプロジェクトにインストールできます。
ステップ2—プロジェクトにYarnをインストールする
Yarnを使用して既存のYarnベースのプロジェクトを操作している場合は、この手順をスキップできます。 プロジェクトは、ローカルバージョンのYarnと、それを使用するために必要なすべての構成ファイルで既にセットアップされている必要があります。
独自の新しいプロジェクトをセットアップする場合は、プロジェクト固有のバージョンのYarnを今すぐ構成する必要があります。
まず、プロジェクトディレクトリに移動します。
cd ~/my-project
プロジェクトディレクトリがない場合は、mkdirを使用して新しいディレクトリを作成し、そのディレクトリに移動できます。
mkdir my-project cd my-project
次に、yarn setコマンドを使用して、バージョンをberryに設定します。
yarn set version berry
これにより、現在アクティブに開発されているバージョンのYarn(berry)がダウンロードされ、プロジェクトの.yarn/releases/ディレクトリに保存され、.yarnrc.yml構成ファイルも設定されます。
OutputResolving berry to a url... Downloading https://github.com/yarnpkg/berry/raw/master/packages/berry-cli/bin/berry.js... Saving it into /home/sammy/my-project/.yarn/releases/yarn-berry.cjs... Updating /home/sammy/my-project/.yarnrc.yml... Done!
ここで、yarn --versionコマンドを再試行してください。
yarn --version
Output3.0.0
バージョンが3.0.0以降であることがわかります。 これはYarnの最新リリースです。
注:プロジェクトディレクトリからcdを取り出して、yarn --versionを再度実行すると、グローバルYarnのバージョン番号[この場合、X152X]。 yarnを実行するたびに、グローバルにインストールされたバージョンのコマンドを使用しています。 グローバルyarnコマンドは、最初に.yarnrc.ymlファイルを含むYarnプロジェクトディレクトリにあるかどうかを確認し、ある場合は、で構成されているプロジェクト固有のバージョンのYarnにコマンドを渡します。プロジェクトのyarnPath設定。
これで、プロジェクトはプロジェクト固有のバージョンのYarnでセットアップされました。 次に、一般的に使用されるyarnコマンドをいくつか見ていきます。
毛糸の使用
Yarnには多くのサブコマンドがありますが、開始するのに必要なのはほんのわずかです。 使用する最初のサブコマンドを見てみましょう。
ヘルプを取得する
新しいツールを使い始めるときは、オンラインヘルプにアクセスする方法を学ぶと便利です。 Yarnでは、--helpフラグを任意のコマンドに追加して、詳細情報を取得できます。
yarn --help
これにより、yarnコマンドの全体的なヘルプが出力されます。 サブコマンドに関するより具体的な情報を取得するには、サブコマンドの後に--helpを追加します。
yarn install --help
これにより、yarn installコマンドの使用方法の詳細が出力されます。
新しい糸プロジェクトの開始
プロジェクトを最初から開始する場合は、initサブコマンドを使用して、必要なYarn固有のファイルを作成します。
yarn init
これにより、package.json構成ファイルとyarn.lockファイルがディレクトリに追加されます。 package.jsonには、構成とモジュールの依存関係のリストが含まれています。 yarn.lockファイルはそれらの依存関係を特定のバージョンにロックし、依存関係ツリーが常に一貫していることを確認します。
プロジェクトのすべての依存関係をインストールする
既存のYarnベースのプロジェクトにすべての依存関係をダウンロードしてインストールするには、installサブコマンドを使用します。
yarn install
これにより、開始するために必要なモジュールがダウンロードおよびインストールされます。
プロジェクトへの新しい依存関係の追加
addサブコマンドを使用して、プロジェクトに新しい依存関係を追加します。
yarn add package-name
これにより、モジュールがダウンロードされてインストールされ、package.jsonおよびyarn.lockファイルが更新されます。
.gitignoreファイルをYarn用に更新する
Yarnは、プロジェクトディレクトリ内の.yarnフォルダにファイルを保存します。 これらのファイルの一部はバージョン管理にチェックインする必要があり、その他は無視する必要があります。 Yarnの基本的な.gitignore構成は次のとおりです。
.gitignore
.yarn/* !.yarn/patches !.yarn/releases !.yarn/plugins !.yarn/sdks !.yarn/versions .pnp.*
これにより、.yarnディレクトリ全体が無視され、プロジェクト固有のバージョンのYarnを含むreleasesディレクトリなど、重要なフォルダにいくつかの例外が追加されます。
GitとYarnの構成方法の詳細については、.gitignoreの公式Yarnドキュメントを参照してください。
結論
このチュートリアルでは、Yarnをインストールし、いくつかのyarnサブコマンドについて学習しました。 Yarnの使用の詳細については、公式のYarnCLIドキュメントを参照してください。
より一般的なNode.jsとJavaScriptのヘルプについては、 Node.js と JavaScript タグページ。関連するチュートリアル、テクニカルトーク、コミュニティのQ&Aが掲載されています。