Composer中require與require-dev的差別

在使用composer安裝套件時常會有些套件使用「require」,有些套件使用「require-dev」的方式去安裝套件,差了一下他們之間使用時機的差異。

使用時機

  • require:專案必須要使用的套件
  • require-dev:開發專案時使用的套件(像是測試的套件),在正式環境不需要的套件

在下composer指令時如果沒有指定要安裝require-dev的套件,則require跟require-dev的套件都會被安裝

require跟require-dev的套件都會被安裝
$ composer update

會安裝dev的套件
$ composer update --dev

不會安裝require-dev的套件
$ composer update --no-dev

參考資料:
php - What’s the difference between require and require-dev? - Stack Overflow
Composer - require-dev
Composer - CLI
Composer - CLI 中文版