Нужно ли ставить под контроль версии папку vendor?
Можно "ставить под контроль" файл composer.lock - после pull'а на продакшене запускается "composer install" и версии пакетов всегда те же, что и у разработчика.
В отдельный репозиторий зависимости. А так в .gitignore.
composer install для деплоя на прод? Не самое хорошее решение.