Иван Климчук, Alroniks Experts.
Вооруженный до зубов Иван Климчук
Основная задача Gitify – это собрать элементы действующего сайта в понятный человеку формат, сохранить в файлы и точно так же восстановить сайт из файлов, но уже в другом месте (на боевом сервере, например). Важное в этом процессе — читаемый формат и то, что версиями этих файлов можно управлять посредством git.
Для начала нужно установить Composer – менеджер пакетов для PHP.
git clone https://github.com/modmore/Gitify.git gitifycd gitifycompser installchmod +x Gitifygitify init
Можно настроить alias в .bashrc или .bash_profile
Вся конфигурация сайта хранится в файле .gitifyв формате YAML.
data_directory: _data/data:templates:class: modTemplateprimary: templatenameextension: .html
gitify extractgitify buildgitify build --forcegitify build --skip-clear-cachegitify build --force --no-backup
gitify backupgitify backup namegitify restoregitify restore namegitify restore last
gitify modx:installgitify modx:install 2.4.2-plgitify modx:install latestgitify modx:install --downloadgitify modx:upgradegitify modx:upgrade --download
gitify package:install packagenamegitify package:install --allgitify package:install --all --interactive
Объект, ID которого уже существует, временно сохраняется в памяти. После полного завершения остальной сборки, включая очистку, gitify пытается разрешить конфликт. В случае перемещения или переименования объекта, после очистки "старый" объект будет удален, а новый будет вставлен правильно. Если же конфликт на самом деле есть, сохраненный в памяти объект будет вставлен с новым ID и для него будет запущена команда gitify extract.
Удаляются все ресурсы, которым на найдено соответствие в файлах. Очистку в момент сборки можно отключить передав параметр --no-cleanup.