Разработка с Composer

Разработка с composer с первого взгляда выглядит как нечто дико непонятное, особенно, когда сталкиваешься с проблемами разрешения конлфиктов/зависимостей и т.п. Это происходит до тех пор, пока не начнешь вникать. А когда начинаешь вникать, понимаешь насколько это глобальный, мощный и полезный инструмент. Тут несколько полезных для меня вариантов использования дабы не забыть (а значит будет пополняться)

Как внести правки в пакет, который уже установлен в системе:

  1. в composer.json устанавливаем версию разработки, например dev-master (которая может служить алиасом на другую ветку для разработки)

  2. обновим зависимость с использованием исходного кода, дабы можно было использовать контроль версий и отправить изменения в git:

    composer upgrade --prefer-source repository/package-name
  3. Теперь в папке с модулем можно вносить изменения и коммитить в репозиторий

  4. После изменений необходимо установить необходимую версию и обновить пакет:

    composer update repository/package-name

    Бывает, что при выполнении этих команд в папке не появляется .git, в этом случае можно попробовать переименовать (удалить) папку с пакетом и запустить снова команду обновления — composer update --prefer-source repository/package-name

Установка зависимостей (vendor) без установки composer (глобально)

Для установки можно использовать

docker run --rm --interactive --tty \
  --volume $PWD:/app \
  composer {{COMMAND}}

Либо, когда установку блокируют различные зависимости, которых нет в образе можно использовать ключи --ignore-platform-reqs --no-scripts

docker run --rm --interactive --tty \
  --volume $PWD:/app \
  composer install --ignore-platform-reqs --no-scripts

Источники

Leave a comment

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.