В чем разница между обновлением композитора и установкой композитора?

В чем разница между 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, чтобы отобразить последние версии.

Источник: Композитор: все о файле блокировки