Я представил несколько исправлений для ядра WordPress на Trac (одно из которых было использовано), но каждый раз, когда я думаю об этом, я съеживаюсь, потому что мои настройки для этого невероятно утомительны.
Может кто-нибудь подробно описать шаги, необходимые для отправки патча для ядра, а затем лучший способ упростить процесс, чтобы он не был таким утомительным? Я работаю в Mac OS X и PhpStorm в настоящее время, но я думаю, что сценарий оболочки может быть проще всего? Или, может быть, PHP Script, который выполняет всю работу?
Одна из проблем заключается в том, что я не до конца понимаю, с чего мне начать. Начинать с багажника? Нужно ли загружать новую копию и добавлять / редактировать эту копию с моим кодом каждый раз, когда я хочу создать патч?
Опять же, хотя я и сделал это, работая с SVN, а патчирование действительно выходит за рамки моего текущего набора навыков, и я хочу это изменить. Надеюсь, что эксперты по патчированию WordPress могут прийти мне на помощь. Заранее спасибо.
ОБНОВИТЬ:
После ответа @ hakre я решил добавить еще один вопрос:
- Могу ли я создавать патчи из более старой версии или я должен использовать транк?
- Если я работаю над проектом, использующим выпущенную версию (3.0.1), могу ли я изменить его и создать патч для ядра, или мне нужно загрузить и настроить нетронутую и новую копию транка и заново внести туда свои модификации?
- Могу ли я использовать сценарии оболочки, чтобы я мог закодировать логин в сценарии и просто запустить сценарий, чтобы воссоздать все, что мне нужно, и / или создать патч?
- И какие подводные камни?
Все эти вопросы, по-видимому, принимаются теми, кто знает, как работает SVN в WordPress, и поэтому всегда скрывается в любом обсуждении.
svn diff > my-patch.patch
я, Густа!Eclipse PDT + Subclipse + X
Я использую Eclipse, который имеет интеграцию SVN . Я думаю, что PHP Strom делает то же самое. Я вхожу в один из моих стволовых проектов, которые в основном являются извлечением из хранилища WordPress SVN.
Затем я редактирую файлы, которые мне нужно отредактировать. Eclipse показывает, какие изменения, я щелкаю правой кнопкой мыши по каталогу, выбираю
Team->Create Patch
и мне предлагают все измененные файлы, которые я могу выбрать для сравнения. Затем я могу выбрать между копированием в буфер обмена или сохранением на диск. Все патчи, которые я создаю с номером заявки, я сохраняю в каталог на своем жестком диске.Затем я захожу в браузер и загружаю патч.
Я мог бы также сделать это с интеграцией MyLyn Trac , что еще более удобно, но вам нужен XML-RPC прямо в trac, поэтому вам нужен администратор trac для связи. Это работает довольно хорошо, но у меня не настроено это в каждом проекте, и я использую его, главным образом, когда делаю краткое изложение билетов.
Так что, на самом деле, проверьте Eclipse, если хотите. Он огромный и медленный, поэтому вам нужен либо большой компьютер. На маленьких я хорошо знаком с Fedora Linux. Затмение хорошо работает на нем. Я знаю, что вы поклонник PHP Storm, но мне действительно нравится мой Eclipse, и он поставляется с множеством расширений, которые действительно потрясают. Даже для PHP :). Но PHP Storm должен в основном делать вещи для извлечения / исправления.
WordPress Eclipse 1x1
Ах, и у меня есть инструмент в моей ОС, который сохраняет все каталоги, которые я использовал. Так что я могу быстро сохранить патчи и загрузить файлы, потому что они всегда находятся в той же директории, что и в недавнем списке.
Пример интеграции: PHP Code Sniffer, Eclipse и WordPress
источник
Я сам использую это:
https://core.trac.wordpress.org/ticket/9724
Хотя это явно больше в отделе патчей. ;-)
источник