Использование Gitify для синхронизации тестового и рабочего сайта на Windows и с Openserver

У меня такая задача. На модкс частично перенесена система управления производством (Первоначально сделанная на Excel директором. Но excel тупит на больших объемах данных и синхронизация разных книг еще тот геморой). Регулярно на сайте что-то меняется. Сейчас, чтобы не мешать рабочему процессу фирмы, сделали тестовую копию сайта. Теперь желательно сделать так чтобы ее можно было быстро синхронизировать с рабочим сайтом.
Нужно чтоб с тестового сайта переносились изменения всех ресурсов, копировались все измененные файлы компонентов и переносилась структура таблиц компонентов без изменения данных. Еще таблицы с настройками желательно настроить чтоб копировались, но это можно и ручками.
Решил использовать Gitify. И заодно написать пример его использования. Начинаю установку прямо сейчас.

http://modmore.github.io/Gitify/ru/
1. Установка git.
С TortoiseGit я уже как-то давно работал. Ставлю ее по инструкции Инструменты для работы с Git – TortoiseGit.
Однако не написали что нужен Git SCM to Windows. Скачиваем отсюда gitforwindows.org/ При установке его установке убираем галочку «Windows Explorer integration», как рекомендуют в faq. Остальное все по умолчанию. Только Notepad++ выбрал.
Продолжаю ставить TortoiseGit. Путь к Git SCM to Windows сам определился. Все остальное по умолчанию. Так же поставил пакет локализации.

2. Установка Gitify
В папке C:\OSPanel\modules создаю папку Gitify. (Кстати с Openserver git то уже стоит :-)).
На папке C:\OSPanel\modules щелкаем правой кнопкой и выбираем «Git Клонировать». Url github.com/modmore/Gitify.git Папка C:\OSPanel\modules\Gitify.
Запускаем коносоль Openserver (Щелкаем правой кнопкой на ярлык Openserver в трее, затем Дополнительно и Консоль). В ней выпоняем команды.
cd C:\OSPanel\modules\Gitify
composer install
Gitify установлен.

3. Тестируем
Инициализируем проект Gitify на тестовом домене.
cd C:\OSPanel\domains\test.modx.pl
C:\OSPanel\modules\Gitify\Gitify init
Ответил на все вопросы, файл .gitify создался. Для кастомных компонентов ничего не настраивал.
Экспорт базы.
cd C:\OSPanel\domains\test.modx.pl
C:\OSPanel\modules\Gitify\Gitify extract
Поправил 1 экспортированный чанк и импорт всего обратно
cd C:\OSPanel\domains\test.modx.pl
C:\OSPanel\modules\Gitify\Gitify build
Изменения в чанке применились :-).

4. Настройка рабочей конфигурации.

4.1 Копируем .gitify с тестового на рабочий. Все равно настройки те же самые.
4.2 Делаем экспорт рабочего.
cd C:\OSPanel\domains\modx.pl
C:\OSPanel\modules\Gitify\Gitify extract
4.3 Создаем репозиторий на рабочем. В меню «Git создать здесь хранилище».
4.4 Заходим папку сайта и добавляем все нужные файлы в git. На выделенных папках выбираем TortoiseGit +Добавить. C:\OSPanel\domains\modx.pl\core\cache и C:\OSPanel\domains\modx.pl\core\config не добавляю.
4.5 На хранилище C:\OSPanel\domains\modx.pl щелкаем «Git фиксировать». Что-то пошло не так и пришлось некоторые папки добавить в список игнорирования.

4.6 переименовываем папку тестового сайта и создаем пустую test.modx.pl.
4.7 На test.modx.pl выбираем «Git Клонировать». URL C:\OSPanel\domains\modx.pl Папка C:\OSPanel\domains\test.modx.pl\. И запускаем.
4.8 Создаем папку C:\OSPanel\domains\test.modx.pl\core\cache и копируем C:\OSPanel\domains\test.modx.pl\core\config со старой тестовой копии.
Тестовый сайт работает. (Базу я до установки гит обновил)

Директор обругался, что я целый день фигней занимался. В принципе, все готово, но тестировать что и как работает и делать доп. настройки буду уже после выполнения рабочей задачи.

Upd 29.02.2020
При попытке перенести изменения с тестового на рабочий получил 3 глюка:
  1. При попытке отправить пуш на рабочий сайт гит обругался. Пролечил, вроде, но файлы не обновились. В итоге скопировал файлы через totalcommander
  2. В пуш почему-то попали файлы из кеша modx.
  3. Gitify build. Gitify ресурсы синхронизирует по alias и перемешал мне каталог. Было три папки Настройки. При загрузке все их дочерние ресурсы попали в первую найденую папку настройки.
Зато все чанки и сниппеты нормально прогрузились и это немного времени сэкономило. Таблицу ресурсов через sql перекинул. Сейчас ресурсы завожу только я и их ручками можно синхронизировать. Но если мы вдруг базу знаний компании сделаем на сайте, то будет сложно :-(.
Вообщем сделать полную синхронизацию можно, но это от 3 до 20 дней, в зависимости от того какой путь решения задачи выбрать. Пока времени нет, но, надеюсь, в течении месяцев 3 доберусь.
Александр
26 февраля 2020, 13:33
modx.pro
2
381
+3
Поблагодарить автора Отправить деньги

Комментарии: 1

srs
srs
26 февраля 2020, 19:16
0
Прям месяц синхронизаций.
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    1