Пакеты Composer не нужно помещать в хранилище (/vendor в .gitignore).
После установки коммитится composer.json и composer.lock.
Другой разработчик просто делает composer install и у него ставится то, чего не хватает.
composer update будет каждый раз обновлять пакеты и переписывать composer.lock, а не просто устанавливать то, что есть в composer.lock.
Если у кого-то Composer не установлен, настоятельно требовать его установить.