Прокачиваем скорость разработки под Drupal с помощью Drush

Главные вкладки

Аватар пользователя stillfinder stillfinder 2 октября 2014 в 22:44

Drush (от Drupal shell) — утилита с интерфейсом командной строки, созданная для управления и администрирования Drupal сайтов, доступна как и для Linux, Unix, Mac OS X, так и для Windows систем. Drush используется многими разработчиками, например, для скачивания/установки/удаления модулей, установки сайтов на Drupal, применении обновлений модулей в базе данных, бэкапа сайта и многого другого.

Drush позволяет очень сильно сэкономить время, когда нужно выполнить типичные задачи или автоматизировать часто выполняемые действия. Например, бэкап сайта, очистка кэша, восстановление сайта из бэкапа. Для того, чтобы пользоваться Drush - его сначала нужно установить. Итак, приступим.

Установка Drush

Mac OS X, Linux

Вариант 1
В терминале вводим:

git clone https://github.com/drush-ops/drush
sudo mv drush /usr/local/lib/
sudo chmod u+x /usr/local/lib/drush/drush
sudo ln -s /usr/local/lib/drush/drush /usr/bin/drush

Вариант 2 (Используя PEAR)
Если модуль console_getopt не установлен, установим его:

pear install Console_Getopt

Если он уже установлен, то просто вводим в терминале следующие команды:

>pear upgrade --force Console_Getopt
>pear upgrade --force pear
>pear upgrade-all
>pear channel-discover pear.drush.org
>pear install drush/drush

Windows

Для установки Drush под Windows проще всего воспользоваться установщиком. Переходим сюда и кликаем по ссылке Download Drush 6.0 Windows Installer. Запускаем скаченный DrushSetup.msi с правами Администратора, кликаем Next, выбираем необходимые компоненты и нажимаем Install.

Как пользоваться Drush

Я думаю, что большинство разработчиков знает куда вводить команды Drush, но на всякий случай все-таки уточню. Все команды вводятся в терминале. Это может быть командная строка сервера к которому Вы подключились, или командный интерфейс вашей локальной операционной системы, где установлен Drupal. Перед тем как вводить Drush команды, нужно перейти в корневую директорию установленного Drupal.

Команды Drush

drush help
выводит справку по командам Drush.

drush help [имя команды]
Справка по конкретной команде Drush.

drush status
Выведет информацию о Вашем Drupal сайте.

drush --uri=http://mysite.com status
drush -l http://mysite.com status

Аналогично drush status, но для мультисайтинка, где вместо http://mysite.com подставляете URL своего сайта.

drush -r /home/user/sites/drupal status
drush -root=/home/user/sites/drupal status

Выводит информацию о сайте, корневая директория которого находиться в /home/user/sites/drupal

drush sm
drush pm-list

Выводит информацию о всех модулях и темах Drupal сайта.

drush pm-info [имя_модуля]
Выводит информацию о конкретном модуле.

drush pm-releases
Возвращает информацию о версиях модулей и тем.

drush pm-releases [имя модуля или темы]
Возвращает информацию о версиях модуля или темы.

drush dl [имя модуля или темы]
Скачивание модуля или темы.

drush en [имя модуля или темы]
Установка скаченного модуля или темы.

drush dis [имя модуля или темы]
Отключение модуля или темы.

drush up [имя модуля или темы]
Обновление модуля или темы.

drush pm-uninstall [имя модуля или темы]
Удаление модуля или темы.

drush cc
Очистка кэша(сокращение от cache-clear. После ввода команды будет предложено какой кэш нужно очистить.

drush cc all
Очистка всех кэшей

drush sql-conf
Вывод информации о базе данных Drupal.

drush sql-dump --skip-tables-key=common | gzip > ~/mysite.sql.gz
Дамп базы данных в файл mysite.sql.gz, который будет создан в домашней директории.

gunzip < ~/mysite.sql.gz | `drush sql-connect`
Восстановление базы данных из файла mysite.sql.gz, который находится в домашней директории.

P.S.

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