Грубо говоря, нужно зайти в папку модуля hierarchical_select и там выполнить команду: patch -p1 < path/file.patch
или git apply --index path/file.patch
Т.е. можно просто скопировать адрес ссылки на пэч и в командной строке ввести patch -p1 < path/file.patch, где скопированный адрес вставить вместо path, а название файла вместо file.patch и не нужно вручную убирать строки с минусом и добалвять строки с плюсом? Они автоматически добавятся в нужный файл?
Открыть файл патча в notepad++ (будет подсветка синтаксиса). Там где минусы в начале, эти строки удаляешь у файла, там где плюсы, это строки добавляешь. Там где ничего нет, по ним ищешь места, где вставить код.
Это решение в лоб, но для небольших патчей помогает
Я счастливый пользователь archlinux, в терминале перехожу в директорию с модулем insert, туда же сложил файл патча и выполняю patch -pl < insert-add_support_to_shadowbox-1886464-1_0.patch
в ответ получил:
[admin@archlinux insert]$ patch -pl < insert-add_support_to_shadowbox-1886464-1_0.patch
patch: **** strip countl is not a number
пасибки, только...получил вместо сайта белую страницу с:
Fatal error: require(): Failed opening required '/opt/lampp/htdocs/drupal.my/sites/all/modules/insert/includes/shadowbox.inc'(include_path='.:/opt/lampp/lib/php') in /opt/lampp/htdocs/drupal.my/sites/all/modules/insert/insert.module on line 14
все ништяк! все файлы были сложены в директории модуля в /b
это видимо от моих прежних попыток пропатчить осталось. просто скопировал их в корень модуля, кеша зачистил.
Спасибо, duozersk!
Думаю, не стоит мучаться, надо просто ставить git. Пусть никого не пугает: с git, как с системой контроля версий разбираться не придется: просто ставим, запускаем git bash, командой cd переходим в нужную папку (для windows-юзеров: не понимает, например, восклицательные знаки в названиях папок и надо использовать / вместо \ в Винде) и выполняем git apply --index path/file.patch, как написал duozersk.
Комментарии
доступ на ssh есть?
drupal.ru/node/4939
Смотрите последний комментарий
У меня есть!
И тоже возник такой же вопрос.
Кто расскажет?
http://drupal.org/patch/apply
Грубо говоря, нужно зайти в папку модуля hierarchical_select и там выполнить команду:
patch -p1 < path/file.patch
или
git apply --index path/file.patch
где path/file.patch - ваш патч.
Т.е. можно просто скопировать адрес ссылки на пэч и в командной строке ввести
patch -p1 < path/file.patch
, где скопированный адрес вставить вместо path, а название файла вместо file.patch и не нужно вручную убирать строки с минусом и добалвять строки с плюсом? Они автоматически добавятся в нужный файл?а я так ставлю, curl path/to/your.patch | git apply
Открыть файл патча в notepad++ (будет подсветка синтаксиса). Там где минусы в начале, эти строки удаляешь у файла, там где плюсы, это строки добавляешь. Там где ничего нет, по ним ищешь места, где вставить код.
Это решение в лоб, но для небольших патчей помогает
Теперь понятно! Спасибо ОГРОМНОЕ!
Сам так всегда делаю
Только так и получилось.
Спасибо!!!
в netbeans есть даже кнопка "применить патч различий"
для winпользователей это будет наименее болезненный путь
у линуксоидов эта проблема отсутствует
продвинутый winзверь поставит виндовый аналог patch или cygwin,
почешет репу, спросит у себя нафига эти лишние телодвижения
и перейдет на nix))))))))
и снова моя тема:
тут патч для интеграции shadowbox в модуль insert
http://drupal.org/node/1886464
Я счастливый пользователь archlinux, в терминале перехожу в директорию с модулем insert, туда же сложил файл патча и выполняю patch -pl < insert-add_support_to_shadowbox-1886464-1_0.patch
в ответ получил:
patch: **** strip count l is not a number
вот выхлоп на другую команду:
fatal: --index outside a repository
что-то не получается!
какие проблемы?
cd sites/all/modules/insert/
wget http://drupal.org/files/insert-add_support_to_shadowbox-1886464-1_0.patch
less insert-add_support_to_shadowbox-1886464-1_0.patch (поглядеть что-ли))
patch < insert-add_support_to_shadowbox-1886464-1_0.patch
l это не 1 ,а 1 не l )))))))))
пасибки, только...получил вместо сайта белую страницу с:
Fatal error: require(): Failed opening required '/opt/lampp/htdocs/drupal.my/sites/all/modules/insert/includes/shadowbox.inc' (include_path='.:/opt/lampp/lib/php') in /opt/lampp/htdocs/drupal.my/sites/all/modules/insert/insert.module on line 14
вот 13 и 14 строки файла insert.module
require dirname(__FILE__) . '/includes/shadowbox.inc';
файл /includes/shadowbox.inc отсутствует. либо его где-то надо взять либо он должен был сам создаваться чтоли
все ништяк! все файлы были сложены в директории модуля в /b
это видимо от моих прежних попыток пропатчить осталось. просто скопировал их в корень модуля, кеша зачистил.
Спасибо, duozersk!
Думаю, не стоит мучаться, надо просто ставить git. Пусть никого не пугает: с git, как с системой контроля версий разбираться не придется: просто ставим, запускаем git bash, командой cd переходим в нужную папку (для windows-юзеров: не понимает, например, восклицательные знаки в названиях папок и надо использовать / вместо \ в Винде) и выполняем git apply --index path/file.patch, как написал duozersk.