Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
20
Help us understand the problem. What is going on with this article?
@nibushibu

Yarnのインストールとよく使うコマンド

More than 1 year has passed since last update.

npmも最近は、ほぼyarnと同じような仕様・挙動になったので、npmでもいいんだと思いますが、
自分はnpmでいろいろコケたりしたあとでyarnに変えてだいぶ楽になったこともあって、いまもyarnを使っています。(猫好き)

性能的にもいまやほとんどnpmおYarnに肉薄してるらしいですが、巷の検証記事とかを読む限りは、Yarnのほうが、まだ若干早かったり、データサイズが軽かったりするっぽい。(感覚値。真面目に検証はしてないです)

コマンドもすっきりしていて楽チンな印象。
使うひとが増えてくれるかなということで、ゆるく使っている自分の認識をまとめてみます。

Yarnのインストール

ほぼほぼここに書いてある通りですが。

brew install yarn

Homebrewからインストールできます。

自分の場合は n というNode.jsのバージョンを管理するツールを入れてるので

brew install yarn --without-node

というオプション付きでインストールしました。

おまけ:Node.jsバージョン管理ツール「n」について

Node.jsでNode.jsのバージョンを切り替えるという不思議なツール。
下記の記事を参考してインストールしました。
Node.jsのバージョンをさくっと切り替えられるので便利です。
nodeのバージョンをnで管理する - Qiita

install

yarn

または

yarn install

package.jsonに書かれたパッケージをよしなにインストールしてくれます。
https://yarnpkg.com/ja/docs/cli/install

add

yarn add パッケージ名

任意のパッケージをインストール。
https://yarnpkg.com/ja/docs/cli/add

--dev オプションをつけるとpackage.jsonのdevDependenciesのほうに、オプションなしだとdependenciesのほうにパッケージ名とバージョンが追記されます。

つくるものはWebサイトとかが多いので、jQueryみたいなサイトの動作に直接必要なものはオプション無しでインストールして、gulpとか開発のためのツールは--devオプションつけてインストールしてますが、ただWebサイト作ってる分には全部オプション無しとかでも、ほぼ実害はないはず。。(自分は気持ち悪いので自分なりの解釈で分けていますが)

参考: ちゃんと使い分けてる? dependenciesいろいろ。 - Qiita
https://qiita.com/cognitom/items/acc3ffcbca4c56cf2b95

outdated

yarn outdated

巷の最新バージョンと、現在インストールされているバージョンを比べてふるいものをリストアップして表示してくれます。

こんな感じです。

Screen Shot 2018-06-08 at 7.46.27.png

赤い色で表示されたパッケージはメジャーバージョンアップなど大きな仕様変更が入っているもので、後述のupgradeコマンドを実行してもバージョンアップされません。

upgrade

yarn upgrade

古いバージョンのパッケージを上書きしてくれます。

yarn upgrade --latest

というように、--latestオプションをつけると、前述のoutdatedコマンドで赤い文字で表示されたメジャーバージョンアップも反映され、package.jsonに記載されたバージョン番号も最新のものに書き換えられます。
(動作になにかしら影響が出るので可能性が高いので、--latestオプションは、その辺り注意が必要)

remove

yarn remove パッケージ名

パッケージをアンインストール

run

yarn run コマンド名

または

yarn コマンド名

package.jsonのscriptsっていうところで定義したコマンドを実行できます。
いわゆる npm scripts というやつで、gulpとかつかわずとも簡単な処理はこれで作れます。

npm-scriptsについて - Qiita
https://qiita.com/axross/items/a2a0d148e40b66074858

yarnの機能というよりはnpmの機能かなという気もしますが、厳密にはyarnのrunはnpmのそれとちょっと違うらしいです。

yarn run が便利 - Qiita
https://qiita.com/y13i/items/27d39edac23b7a867935

20
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
20
Help us understand the problem. What is going on with this article?