Я разрабатываю темы, их много. Мне дают PSD, кодируют HTML / CSS, помещают код в Wordpress и вносят исправления, когда они получают QC'd. Вживую клиенты могут редактировать сообщения в блоге, как обычно, или загружать фотографии с помощью специального плагина.
Иногда мне приходится вносить изменения в тему или содержимое страницы / публикации, что означает, что я либо делаю их живыми, либо мне приходится загружать и настраивать сайт в среде разработки, которая должна быть одобрена клиентом. У меня нет резервной копии, у меня нет контроля версий, и я понимаю, что это нужно изменить.
Были предложены Git и Mercurial, и я хотел бы воспользоваться этими инструментами, но я не совсем понимаю, как вписать их в рабочий процесс.
Требуются ли мне все изменения сайта на сервере разработки, а затем отправлять их после одобрения? Как насчет записи в блоге? Похоже, излишне писать посты на dev и публиковать изменения вживую, но как мне синхронизировать базы данных, если они редактируются на живом сайте? Я почесал интернет. Некоторое руководство будет оценено.
Ответы:
Прежде всего, вы должны признать, что здесь есть два рабочих процесса: ваш и ваш клиент.
Ваш рабочий процесс
Их рабочий процесс
Проблема
Реализация контроля версий здесь абсолютно не связана с рабочим процессом ваших клиентов. Все дело в отслеживании кода, который вы используете для темы WordPress. Все ваши файлы тем, пользовательские плагины и т. Д. Должны быть в системе управления версиями (Git, Mercurial, Subversion или как вы захотите использовать).
Ваш рабочий процесс становится:
Помните, что речь идет о ведении истории контроля версий для вашего кода . Код - это то, что ваши клиенты не должны менять, и вы никогда не должны менять код на производственном сайте, пока он находится в работе.
Но изменения в контенте (сообщения, фотографии и т. Д.) Выходят за рамки вашей системы контроля версий. Другими словами, вы не вносите изменения в разработку, а затем запускаете базу данных в производство. Это плохая практика развития. Если вам требуется синхронизация баз данных dev и prod, вам следует регулярно извлекать резервную копию из рабочей коробки и восстанавливать локальную версию из этой резервной копии.
Код изменяет поток от разработки к производству.
Изменения базы данных передаются от производства к разработке.
источник
Вы можете использовать программное обеспечение, которое синхронизирует базы данных. Но есть также возможность управления версиями самих данных с помощью чего-то вроде http://chronicdb.com
источник
Я просто написал подробный ответ на этот вопрос по другому вопросу. Лично я использую git, и это фантастика. С точки зрения начала работы, я бы порекомендовал проверить http://gitref.org/ и http://help.github.com/mac-set-up-git/ . Если вы тип книги, я читал эту книгу, и она определенно стоит $ 22 за книгу. Заставь себя сделать это, ты не пожалеешь об этом решении.
источник