Как по-простому организовать управление версиями для сайта на Wordpress?
Есть сайт на Wordpress. Он работает на виртуальном хостинге. В этот сайт я периодически вношу изменения. Например, плагин добавляю, стили тестирую, код слегка правлю и т.п.
Сейчас я это делаю, стыдно говорить, на боевой версии сайта. Очевидно, что это неправильно.
Я хочу тестировать изменения перед выкладкой на боевой сайт. Как это лучше всего сделать?
Первое, что приходит в голову - это установить систему управления версиями. Однако я раньше такие сервисы сам не ставил. Даже не знаю с чего начать, какую систему выбрать и т.п.
Еще мне в голову пришло решение тупо сделать копию сайта на поддомене, закрыть ее снаружи и тестировать изменения на ней. Но этот вариант не очень нравится, так как требует постоянного обновления копии, да и приводит к лишней ручной работе по переносу изменений.
Надеюсь на вашу помощь и советы! Буду очень благодарен!
Сайты на WordPress + Интернет магазины WooCommerce
В OpenShift сразу идет публикация кода через GIT. Сделано очень удобно и профессионально.
Комитишь, затем пушишь и тут же автоскрипты разворачивают это на боевом.
Если настраивать самому, то самому. Поднимать на своем сервере GIT и настраивать свои схемы. Мы как то это делали, но на уровне танцов с бубнами. Потанцевали, вроде бы че то заработало. Работали. Сейчас тот проект закрыт. А на текущих потребности в GIT нет.
Точнее есть, но просто через GitHub. Льем новые версии на GitHub, а в плагине для WP стоит класс, который умеет брать новую версию с GitHub через стандартный механизм обновления WP.
Залили новую версию на GIT, дали ей метку типа версия 2.2
Далее идем в консоль и там появляется уведомление что мол вижу новую версию плагина. Жму обновить и заливается с GitHub. В целом очень удобно.
Без тестовой копии жизни нет, используйте гит, ну автоматизируйте перенос с тестового на боевой скриптом как все нормальные люди, вы прямо упираетесь в проблемы, которые для программиста не проблемы.
Настроить Mercurial и синхронизировать клоны несложно.
Основная проблема в том, что переносить надо не только файлы, но и настройки, а они хранятся в SQL.