Обновление Drush с помощью Composer
Я использую Drupal уже несколько лет, но только начинаю работать с Drush - я купил учебник по электронной книге и работаю над этим. Я установил Composer и использовал его для установки Drush. В учебнике указана конкретная сборка Drush для установки (7.0.0-alpha5). Я перешел в папку drupal и запустил
drush st
Чтобы получить информацию об установке, которая работает нормально. В руководстве объясняется, что вам не нужно переходить в папку drupal, чтобы сделать это, вместо того, чтобы использовать
drush --root=PATH-TO-DRUPAL-SITE st
Однако это приводит к ошибке:
Fatal error: Call to undefined function conf_path()
Поиск в Google этой ошибки предполагает, что это проблема с версией Drush и ее обновлением.
так как я перешел в интернет .композитор/производитель/друш/друш папку и запустите глобальное обновление композитора но композитор говорит, что нечего обновлять, подтверждающих версию 7.0.0-alpha5 - я полагаю, это не последняя 7.X версии, поэтому мне нужно что-то меняется в композитора.файл JSON?
3 answers
Если вы хотите обновить глобальные установки любого пакета в composer, вы можете просто сделать это:
composer global update
Вам не нужно переходить к .composer/vendor/drush/drush
Однако: Есть пара вещей:
1) Ваш глобальный файл composer.json может иметь ограничение версии.
Проверьте страницу упаковщика drush: https://packagist.org/packages/drush/drush
, Который покажет вам доступные версии drush.
Редактировать ~/.composer/composer.json
так что ограничение версии для drush/drush
выше, чем у вас есть. Вероятно, что-то вроде "~8"
.
Делать composer global update
.
2) Рекомендуется устанавливать drush для каждого проекта.
Причины, по которым это немного сложно и может не дать ответа на вопрос здесь, поэтому я просто дам ссылку на статью: https://pantheon.io/blog/composer-vs-drush-make-which-should-you-use
Я бы добавил, что, в зависимости от ваших потребностей, composer global update
может не привести вас к нужной вам версии. Я запустил его и только добрался до версии 8.1.8.
Для моих нужд мне нужно было как минимум 8.1.14. Поскольку на данный момент последней стабильной версией была 8.1.15, я просто запустил это: composer require drush/drush:8.1.15
. Это работало нормально, а затем проверялось с помощью drush --version
, который затем зарегистрировал правильную версию.
Чтобы обновить Drush с помощью composer, перейдите в корневой каталог проекта , затем используйте
composer update drush/drush
Обратите внимание, что метод установки и запуска Drush довольно значительно изменился (я полагаю, что с момента выпуска Drush 9). К счастью, управление Drush теперь гораздо менее уникально для Drush и гораздо больше похоже на то, что вы делаете с другим программным обеспечением.
Смотрите официальные документы: Установите локальную программу Drush и программу запуска Drush