LoginSignup
4
2

More than 3 years have passed since last update.

Composerコマンドまとめ

Last updated at Posted at 2021-04-30

はじめに

PHPで開発をしていたら使うであろう Composer についてまとめました。

目次

  • 前提知識

    • Composer
    • composer.json
    • composer.lock
  • コマンド

    • composer init
    • composer install
    • composer update
    • composer require
    • composer remove
  • オプション

  • 参考文献

前提知識

前提知識として以下のことを理解する必要があります。

Composer

依存関係にあるライブラリ( パッケージ )を管理してくれるツール のこと。

composer.json

プロジェクトで使用されているパッケージを定義している。

composer.lock

依存するパッケージのリストが記載されていて、バージョンをロックしている。

コマンド

"composer init"

composer init

「composer.json」 を生成するために使用するコマンド。
プロジェクトの一番はじめに使用するものなので使用頻度はあまり高くありません。

"composer install"

composer install

「composer.lock」 に書いてある内容を読み依存関係をインストールする。
composer init コマンド直後( 初回 )は 「composer.lock」 が生成されていないはずなので 「composer.json」 の内容が読まれ「composer.lock」 が生成される。
初回は install コマンドを使い二回目以降は update コマンドを使用する。

※ 新しいパッケージを導入するときは別コマンド( composer.updatecomposer require )を使用します。

"composer update"

composer update

「composer.json」 の内容をもとに update( 更新 ) する。

注意が必要で 「composer.lock」 の内容も update されるということ。複数人で開発していると、パッケージのバージョンに差異が出て開発した機能にバグが出てしまう恐れがある。

これを防ぐためにも update を使用するときは確認をリーダーに確認を取る、もしくは、パッケージを追加するときは require コマンドを使用すると良いかもしれない。(あくまで個人的見解なのでチームのルールがあれば従ってください)

"composer require"

composer require [パッケージ名]

# 例えば
# PHPMDを追加
composer require "phpmd/phpmd=@stable"

パッケージを追加したいときに使用するコマンド。

"composer remove"

composer remove [パッケージ名]

# 例えば
# PHPMDを削除
composer remove "phpmd/phpmd"

パッケージの削除をしたいときに使用するコマンド。

オプション

コマンドの最後に --dev をつけると 「composer.json」"require-dev" に読み込ませたり追加できたりすることができる。"require-dev" とは開発環境で使用している使用したいパッケージが定義されているということ。

他にもオプションはあるのでドキュメントを一度は覗いてみるとよいかもしれません。

参考文献

4
2
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2