Composer: какая разница между install и update

Пакетный менеджер Composer давно вошел в жизнь php-разработчика. О том, что это такое, я рассказывал в другой публикации. В этой заметке, я хочу рассказать об одном нюансе. Он позволяет сохранить время и нервы, особенно при командной разработке.

Для того, чтобы установить зависимости, описанные в файле composer.json, можно воспользоваться двумя командами:

или

Когда выполняется команда composer install, проверяется, существует ли файл composer.lock. Если нет, тогда устанавливаются все зависимости, указанные в файле composer.json . Все пакеты сохраняются в папку vendor. И создается файл composer.lock. В этом файле хранятся имена и номера версий пакетов, которые были установлены.

Если файл composer.lock существует, то зависимости устанавливаются в соответствии с номерами версий, указанных в нем, а содержимое файла composer.json игнорируется.

Я думаю легко догадаться, что такой подход, позволяется не «сломать код», особенное при отсутствии обратной совместимости. Это позволяет иметь единую среду разработки в команде.

А вот composer update, просто устанавливает последние версии пакетов, указанных в composer.json и создает новый composer.lock.

Нюансы: добавьте папку vendor в файл .gitignore, а файл composer.lock наоборот, выгрузите в репозиторий.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *