パッケージ管理のあれこれ(composer、yarnなど)

パッケージ管理っていろんなプロジェクトで使うことが多いので、手順を覚書。

一度設定してしまえばあまりこの手順は必要ないが、だからこそパソコンを買い替えたりしたときほぼ初めての作業になってしまうので必要性を感じました。

何度もやらないことって忘れがち…。


もくじ


Homebrew

Homebrewを使うことで、コマンドを実行するだけでパッケージのインストールやアンインストールが簡単に行えます。

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

これでインストール完了。

$ brew -v

バージョンを確認して終了です。

コマンドが変わることもあるかもしれないので、Homebrew公式サイトから最新のコマンドを確認しましょう。

composer

composerをインストールするためには先にHomebrewがインストールされている必要があります。

$ brew install composer

これでインストール完了。

$ composer -v
   ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/
Composer version 1.9.2 2020-01-14 16:30:31

バージョンを確認して終了。ここに表示される日付は端末に初めてインストールした日時です。

composerとはってのを軽く過去記事にて挙げてます。

bonoponz.hatenablog.com

npm

npmとは「Node Package Manager」の略で、Node.jsのモジュールを管理するツールです。最近ではyarnのほうが主流なのかもしれません。yarnについて次項で紹介します。

なお、Node.jsをインストールすると同時にnpmもインストールされます。

Node.jsについては過去記事にて。

bonoponz.hatenablog.com

npmの使い方としては、package.jsonを読み込んでファイル内に記載されているライブラリ等をまとめてインストール管理してくれるものです。

なお、プロジェクトごとにパッケージ管理したほうがいいので、プロジェクト(ディレクトリ)ごとにnpm installして管理しましょう。(’22 06追記)

バージョン管理

$ npm -–version

手順

$ npm init // package.jsonを作成
$ npm install // package.jsonに記載されたパッケージを一括インストール

package.jsonには、パッケージ情報を記載しましょう。 以下は一例です。当然プロジェクトによって異なります。

{
  "name": "my-package",
  "description": "my first package ever",
  "license": "MIT",
  "version": "1.0.0",
  "bin": "./cli.js",
  "main": "index.js",
  "scripts": {
    "start": "node index.js"
  },
  "dependencies": {
    "axios": "^0.18.0"
  },
  "devDependencies": {
    "eslint": "^5.14.1"
  }
}

yarn

npmと役割は同様。並行処理でのインストールによってnpmよりも高速にパッケージをインストールできます。2016年にFaceBookが公開したものらしいです。

npmと互換性があるため同じpackage.jsonが使える上に、メリットがいろいろあります。

yarnのメリット

  • インストールが高速
  • yarn.lockファイルで、各パッケージのインストールバージョンを固定できる。
  • npmと同じのpackage.jsonが使えるため、同一プロジェクトでnpmと一緒に使える

手順

$ sudo npm install -g yarn // インストール
$ yarn init // package.jsonの生成
$ yarn // package.json記載のモジュールをインストール
$ yarn add パッケージ名 // パッケージの追加
$ yarn remove // パッケージのアンインストール
$ yarn -v // バージョン確認

パッケージの追加等ももちろんnpmでできますが、今後はyarnを使うことが多いかもしれませんね。

参考URL

npm入門 - Qiita

【初心者向け】NPMとpackage.jsonを概念的に理解する - Qiita

yarnとは - Qiita

https://classic.yarnpkg.com/ja/

バージョン管理ツール、パッケージ管理ツールの種類をまとめました - Qiita