Создание патча для модуля Drupal

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

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

Создание патча для модуля Drupal по шагам.

Для создания патча обычно пользуются командой git diff. Когда у вас уже готовы изменения модуля, выполняется следующее:

  1. Скачиваем оригинальный дистрибутив модуля;
  2. Распаковываем его в отдельную папку (не важно где, например в /tmp);
  3. Инициализируем в папке с ориг. модулем git — git init
  4. Добавляем все файлы модуля в текущий  индекс — git add .
  5. Выполняем первый коммит, создавая данные с которыми будем потом сравнивать наши изменения — git commit -m «Initial commit»
  6. Теперь копируем модифицированные файлы модуля поверх оригинальных. Все готово для сравнения.
  7. Получаем сравнение в виде файла : 

После данных манипуляций вы получите file.patch, которым можно поделиться, к примеру, где то в обсуждениях модуля на drupal.org или на собственном сайте.

Как использовать/применить patch?

Нужно зайти в корень плагина (а также скопировать туда сам патч), который требуется пропатчить, и выполнить:

Мало букафф? Читайте есчо !

Как сравнить два произвольных файла не включенных в репозиторий средствами git diff

Июль 1, 2022 г.

Утилита Git diff может сравнивать не только изменения между ветками, но и вообще произвольные объекты файловой системы, которые даже не включены в репозиторий. ...

Читать

Подключение к GitHub по SSH: пошаговая инструкция

Сентябрь 3, 2025 г.

Работа с репозиториями через SSH удобнее и безопаснее, чем по HTTPS — вам не нужно вводить пароль при каждом пуше, а авторизация выполняется с помощью криптографических ключей. Разберём процесс полностью: от создания ключа до проверки подключения. ...

Читать

GIT workflow или как работать с проектом

Апрель 2, 2024 г.

Как использовать GIT, может зависеть от многих факторов, например как проходит тестирование, работает ли целая команда над проектом или один разработчик соло. Соло разработка Концепция работы с GIT в случае одного разработчика сводится обычно ...

Читать

Как изменить origin в GIT

Декабрь 11, 2020 г.

Можно зайти в настройки .git/config и поменять url источника прямо там, но предпочтительно делать это через командную строку. Origin меняется редко, давайте посмотрим как. Изначально вы задаёте связь с репо следующей командой: [crayon-697aea92c8aca642105037/] ...

Читать
 

Комментарии к «Создание патча для модуля Drupal»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий:

Много комментариев в “Создание патча для модуля Drupal”

  1. VasyOK:

    Спасибо. Пригодилось.

    Если так,
    git diff —no-prefix > file.patch
    то пишет:
    fatal: неоднозначный аргумент «—no-prefix»: неизвестная редакция или не путь в рабочем каталоге.
    Используйте «—» для отделения путей от редакций, вот так:
    «git […] — […]»

    git diff > file.patch — так вроде заработало.