Git и WordPress (+ управление плагинами и медиа) - PullRequest
7 голосов
/ 21 января 2010

Я бы хотел применить контроль версий - используя git - для разработки сайтов на WordPress.

Как мне поступить, исходя из моих проблем ниже?

Концерн 1: «Гранулярные изменения»
В этом конкретном случае трудно локально имитировать среду веб-сервера. Поэтому я бы очень хотел проталкивать изменения. Могу ли я отправить изменения на «уровне суб-фиксации» на веб-сервер, чтобы избежать «неактуальных» фиксаций? (И нужно ли вообще настраивать git-репо на моем удаленном веб-сервере?)

Концерн 2: обработка плагинов и носителей
Ранее я и мои коллеги устанавливали / обновляли плагины и загружали мультимедиа из интерфейса администратора WordPress. Если бы я также хотел синхронизировать медиа и плагины, как бы это было достигнуто?

Я был бы признателен за любые ресурсы, подробно описывающие, как настроить рабочий процесс, который позволил бы мне хранить все мои файлы (WordPress + плагины, медиа, темы и т. Д.) Локально, в то же время позволяя мне выдвигать «гранулярные изменения» мой веб-сервер и "настоящие коммиты" на Github.

1 Ответ

3 голосов
/ 21 января 2010

Что касается Concern1, вы можете изолировать эти микро изменения в ветке.

По сути, ваше локальное репо имеет две ветви:

  • один, посвященный вашим гранулярным коммитам
  • один (мастер) для GitHub

Вы можете подтолкнуть все к:

  • вашего веб-сайта, на пустом хранилище, а затем клонируйте его и извлеките «гранулированную» ветвь.
  • GitHub, мастер обновлен с помощью "настоящих" коммитов.

Чтобы очистить свою историю и построить реальные коммиты, вы можете перебазировать гранулярную ветку поверх мастера интерактивным способом:

git checkout master
git rebase -i granular

То, что вы выбирали, давили или редактировали коммиты, сделанные в гранулярном виде, воспроизводя более чистый набор коммитов на мастере.
Это переписывает детализированную историю, но это не так уж плохо, если никто не извлекает прямо из этой ветки. Если вы хотите сохранить детализированную историю, только merge или cherry-pick некоторые фиксируют от granular до master.

Существует несколько примеров управления Wordpress с помощью Git:

Последняя ссылка является самой подробной информацией о процессе обновления WordPress, и заканчивается также возвратом ваших изменений;

...