Drupal.org issues: как быстро создавать свои или применять готовые патчи

Я нашел просто невероятно интересную и удобную вещь для работы с патчами, это расширение для drush drush_iq
https://www.drupal.org/project/drush_iq
Что оно делает - можно одной строчкой скачать конкретный патч из issue модуля и применить его, а так же можно одной строчкой создать патч из своих изменений и одновременно закоммитить его в нужную issue на drupal.org - очень удобно!

http://cgit.drupalcode.org/drush_iq/plain/README.txt?id=refs/heads/7.x-1.x

Установка:
Надо всего лишь запустить две команды (я пользуюсь командной строкой git bash, но можно и из cmd)

$ drush dl drush_iq
$ drush dl drush_iq_extras

Дополнение: если вам нужна команда drush iq-submit, то вам нужно выполнить дополнительные действия: обновить версию php которая идет с Drush до 5.5; включить там curl; зайти в папку ~/.drush/drush_iq и запустить composer install.

Что нужно сделать, чтобы быстро применить патч:
Найти номер issue и номер коммента с патчем, в моем случае это 2367155 комментарий №2
зайти в папку с модулем к которому сделан этот патч (например sites/all/modules/comment_mover) и запустить команду
drush iq-apply-patch 2367155-#2

Что нужно сделать, чтобы быстро создать новый патч?
Если issue с описанием проблемы уже есть на drupal.org, надо запомнить его номер. Если issue нет, надо создать новый и все равно запомнить его номер.
Далее скачиваем нужную версию проекта, который мы хотим изменить:
drush pm-download PROJECT --package-handler=git_drupalorg --select
Делаем изменения и затем одной строчкой создаем патч и заливаем его в нашу issue:
drush iq-submit 'Description of the patch.' 12345
где 12345 - номер issue.

Вот и всё Так просто, не правда ли?

p.s. Для того чтобы работала команда drush-iq-apply-patch особо париться не надо, он сразу работает. А вот для того чтобы заработал drush iq-submit под OpenServer мне пришлось немного поплясать с бубном, подробности в конце вот этой статьи: http://nikita-petrov.com/raznoe/nastroyka-sredy-razrabotchika-drupal-php...

Комментарии

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