К сожалению, на собеседовании на вопрос “Чем отличаются команды composer install
и composer update
?” мы слишком часто слышим ответ “Не знаю” или, ещё хуже, “Ничем”.
В этой статье мы расскажем, чем отличается install
от update
и почему так важно не добавлять composer.lock
в .gitignore
.
Создаю проект.
Объявляю зависимости в composer.json
. composer update
или composer install
? Сделаю так: в первый раз запущу install
, потом буду update
, логично же? Вижу файл composer.lock
. Ну ок, наверное, это что-то нужное, залью его.
После очередного запуска composer update
опять изменился чёртов composer.lock
. А в прошлый раз так вообще конфликт из-за него при слиянии был. Да пошел он в .gitignore
!
Какой же этот Composer долгий… И памяти жрёт при обновлении…
Время заливать проект на продакшн. Эм… какую команду прописать в скрипт обновления площадки? Ну пусть будет composer install
. После очередного обновления продакшн фатально падает. Выясняется, что пакеты на сервере не обновляются. Так и знал, что install
не сработает. Меняю на update
.
Через какое-то время после очередного деплоймента продакшн снова фатально падает. Какого..?
Читать далее