Самый простой способ создать патч для отправки в ядро WordPress?
Я отправил несколько исправлений для ядра WordPress на Trac (один из которых был использован), но каждый раз, когда я думаю об этом, я съеживаюсь, потому что моя настройка для этого невероятно утомительна.
Может ли кто-нибудь, пожалуйста, подробно описать шаги, необходимые для отправки исправления для core, а затем лучший способ упростить процесс, чтобы он не был таким утомительным? В настоящее время я работаю с Mac OS X и PhpStorm, но я думаю, что сценарий оболочки может быть проще всего? Или, может быть, PHP Сценарий, который выполняет всю механическую работу?
Одна из проблем заключается в том, что я не до конца понимаю, с чего мне нужно начинать. Мне начать с багажника? Нужно ли мне загружать новую копию и добавлять/редактировать эту копию с моим кодом каждый раз, когда я хочу создать исправление?
Опять же, хотя я сделал это, работая с SVN, и исправление действительно выходит за рамки моего текущего набора навыков, и я хочу это изменить. Надеюсь, что вы, эксперты по исправлению WordPress, сможете прийти мне на помощь. Спасибо в продвижение.
ОБНОВЛЕНИЕ:
После ответа @hakre я полагаю, что должен добавить больше к вопросу:
- Могу ли я создавать исправления из более старой версии или я должен использовать транк?
- Если я работаю над проектом с использованием выпущенной версии (3.0.1), могу ли я изменить его и создать исправление для core или мне нужно загрузить и настроить нетронутую и новую копию trunk и заново внести в нее свои изменения?
- Могу ли я использовать сценарии оболочки, чтобы я мог закодировать логин в сценарий и просто запустите скрипт, чтобы воссоздать все, что мне нужно, и/или создать патч?
- И каковы подводные камни?
Все эти вопросы, похоже, задают те, кто знает, как работает SVN WordPress, и поэтому они всегда замалчиваются в любом обсуждении.
3 answers
Самый простой способ создания исправления описан здесь:
Http://wordpress.org/download/svn/
Могу ли я создавать исправления из более старой версии или я должен использовать магистраль?
Вы должны создать исправление для той же версии, к которой вы хотите его применить.
Другими словами, не ожидайте, что патч, созданный для WP 3.0.1, будет полностью применен к WP 3.1-alpha.
Если я работаю над проектом с использованием выпущенной версии (3.0.1), могу ли я измените его и создайте исправление для core или мне нужно загрузить и настроить нетронутую и новую копию trunk и заново внести в нее свои изменения?
Вам не нужно настраивать новую установку для каждого нового исправления. Вы можете просто использовать svn revert, чтобы вернуться к исходной копии.
Кроме того, база данных не обязательно должна быть чистой каждый раз. На самом деле, лучше, если у вас есть некоторые модификации, чтобы имитировать живую среду.
Затмение PDT + Подклипс + X
Я использую Eclipse с интеграцией SVN. Я думаю, что PHP Strom делает то же самое. Я вхожу в один из своих магистральных проектов, которые в основном являются выпиской из репозитория svn WordPress.
Затем я редактирую файлы, которые мне нужно отредактировать. Eclipse показывает, какие файлы изменены, я щелкаю правой кнопкой мыши каталог, выбираю Team->Create Patch
, и мне предлагаются все измененные файлы, которые я могу выбрать для различия. Затем я могу выбрать между копированием в буфер обмена или сохранением на диске. Я сохраните все исправления, которые я создаю с номером билета, в каталог, который у меня есть на жестком диске.
Затем я захожу в браузер и загружаю патч.
Я также мог бы сделать это с помощью интеграции Mylyn Trac, что еще удобнее, но вам нужен XML-RPC прямо в trac, поэтому вам нужно связаться с администратором trac. Он работает довольно хорошо, но у меня он настроен не в каждом проекте, и я использую его в основном, когда делаю сводки билетов.
Так что действительно, проверьте Eclipse, если хотите. Это огромный и медленный, поэтому вам нужен либо большой компьютер. На небольших я получил хороший опыт работы с Fedora Linux. Затмение хорошо работает на нем. Я знаю, что вы фанат PHP Storm, но мне очень нравится мой Eclipse, и он поставляется с множеством расширений, которые действительно потрясают. Даже для PHP:). Но PHP Storm также должен в основном выполнять проверку/исправление.
WordPress Затмение 1x1
- Исключить из пути сборки PHP: wp-admin/load-scripts.php ; wp-admin/load-styles.php .
- Подрывная деятельность (Ствол) это: http://svn.automattic.com/wordpress/trunk , другие согласно.
- Хранилище задач: Используйте соединитель Trac с https://core.trac.wordpress.org .
Ах, и у меня есть инструмент в моей операционной системе, который сохраняет все каталоги, которые я использовал. Таким образом, я могу сохранять исправления и быстро загружать файлы, потому что они всегда находятся в том же каталоге, который у меня есть в списке последних.
Пример интеграции: Анализатор кода PHP, Eclipse и WordPress
Я сам использую их:
Https://core.trac.wordpress.org/ticket/9724
Хотя это, очевидно, больше относится к отделу применения исправлений. ;-)