Отвечает за те зависимости, которые необходимы только для dev-окружения.
К примеру, Вы точно знаете, что библиотека phpunit нужна для разработки, а на проде будет лишней, тогда phpunit попадает в require-dev.
Когда выполняется простой
composer install
устанавливаются и dev-зависимости.
Когда выполняется
composer install --no-dev
устанавливаются только те зависимости, что в основном блоке require.
Источник