🪄Composer
Устанавливает пакеты которые указаны в зависимостях в composer.json в папку vendor, у этих пакетов тоже есть свой composer.json и свои зависимости, их композер тоже "разрешает" и устанавливает. И делает автозагрузку классов соответственно в свойстве "autoload" в composer.json, как в основном, так и в каждом пакете (подробнее тут).
composer require vendor/package
Добавляет требуемый пакет в файл composer.json
и устанавливает его в ваш проект.
Команда require
изменяет composer.json
, находящийся в текущей папке. Если пакету требуются зависимости, то они будут установлены или обновлены. А также будет обновлён composer.lock
.
composer install
Если файла composer.lock
нет, резолвит зависимости исходя из composer.json
и создаёт его. Далее, анализирует файл composer.lock
, скачивает и устанавливает указанные в нём версии пакетов.
Опция --no-scripts
полезна для обхода запуска скриптов, указанных в pre- и post- настройках.
composer update
Обновляет ваши зависимости до последних версий и обновляет composer.lock
.
Команда update
резолвит зависимости чтобы получить самые последние версии зависящих друг от друга пакетов.
composer update --lock
Иногда, вы можете получить такое предупреждение:
Это может произойти после того, как вы вручную редактировали composer.json
(добавляли или изменяли description
, authors
, extra
и т. д.). Даже если ваши изменения незначимы для Composer, он обнаруживает, что md5sum файла изменена, и предупреждает, что эти изменения не учтены в файле composer.lock
.
Поэтому, чтобы подавить это предупреждение, вы можете просто запустить команду update --lock
для обновления lock-файла без обновления самих пакетов.
composer dump-autoload --optimize
Если вам нужно обновить загрузчик, т. к. появились новые классы, вы можете выполнить команду dump-autoload
чтобы избежать установки или обновления пакетов.
Используйте ключ --optimize для преобразования PSR-0 в автозагрузку как для classmap, чтобы автозагрузчик был наиболее быстрым. Это настоятельно рекомендуется дляproduction (вы можете получить 20% прирост), но может занять немного времени для запуска, так что это на данный момент не сделано по умолчанию.
Также вы можете использовать dumpautoload
псевдоним.
composer create-project vendor/package dir/
Создать новый проект из указанного пакета в указанном каталоге.
composer init
Создает базовый вариант файла composer.json
в текущем каталоге.
При запуске команды, Composer будет интерактивно запрашивать значения полей для заполнения, используя при этом для некоторых полей умные значения по умолчанию.
composer remove
Удаляет пакет из секций require или require-dev: remove vendor/package vendor/package2
.
Last updated