В чем разница между composer update и composer install?
В чем разница между обновлением композитора и установкой композитора?
Ответ 1
обновление композитора
composer update обновит ваши зависимости, как они указаны в composer.json
Например, если вам нужен этот пакет как зависимость:
"mockery/mockery": "0.9.*",
и вы действительно установили версию пакета 0.9.1, запуск composer update приведет к обновлению этого пакета (например, до 0.9.2, если он уже выпущен)
подробно composer update будет:
- Прочитайте
composer.json - Удалить установленные пакеты, которые больше не требуются в
composer.json - Проверьте наличие последних версий ваших необходимых пакетов
- Установите последние версии ваших пакетов
- Обновить
composer.lockдля сохранения версии установленных пакетов
установка композитора
composer install ничего не обновит; он просто установит все зависимости, указанные в файле composer.lock
Подробнее:
- Проверьте, существует ли файл
composer.lock(если нет, запуститеcomposer-updateи создайте его) - Прочитайте
composer.lockфайл - Установите пакеты, указанные в файле
composer.lock
Когда устанавливать и когда обновлять
-
composer updateв основном используется в "фазе развития", чтобы обновить наши пакеты проектов в соответствии с тем, что мы указали в файлеcomposer.json, -
composer installв первую очередь используется в "фазе развертывания" для установки нашего приложения на производственном сервере или в тестовой среде с использованием тех же зависимостей, хранящихся в файле composer.lock, созданных при обновлении композитора.
Ответ 2
Когда вы запустите установку композитора, он будет искать файл блокировки и установить все, что содержится в нем, если он не сможет найти его, он будет читать composer.json, установить его зависимости и создать файл блокировки.
Когда вы запускаете обновление для композитора, он просто читает composer.json, устанавливает зависимости и обновляет файл lockfile (или создает новый файл блокировки).
Ответ 3
Запуск composer install будет:
- Проверьте, существует ли
composer.lock. - Если нет, выполните
composer update, чтобы создать его. - Если существует
composer.lock, установите указанные версии из файла блокировки.
Запуск composer update будет:
- Отметьте
composer.json. - Определите последние версии для установки на основе спецификаций вашей версии.
- Установите последние версии.
- Обновить
composer.lock, чтобы отобразить последние версии.
Источник: Композитор: все о файле блокировки