git фиксирует изменения на сервере openshift

#git #ssh #openshift #flat-file #statamic

#git #ssh #openshift #плоский файл #статический

Вопрос:

Я запускаю Statamic CMS с плоской файловой системой (без базы данных) на Openshift.

Проблема, с которой я сталкиваюсь, заключается в том, что когда я обновляю содержимое на сервере (т. Е. С помощью CMS), Изменения, внесенные в плоские файлы (т. Е. Содержимое), Не фиксируются в репозитории git. Итак, когда я добавляю новые изменения на веб-сайт из своего локального репозитория, я заканчиваю переписывать его каждый раз, когда происходит нажатие git. Если я выполняю git pull, я получаю nada, потому что удаленный сервер не знает об изменениях (они еще не были зафиксированы)

Что мне нужно, чтобы иметь возможность сделать, это сделать git commit для любых изменений, которые происходят на сервере. К сожалению, он не работает. Я попробовал использовать SSH, и он понятия не имеет, что есть репозиторий git. Что-то связанное с процессом сборки, который они используют.

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

Ответ №1:

Вам необходимо хранить ваши базы данных с плоскими файлами в каталоге ~/app-root/data вместо каталога репозитория. Каталог репозитория удаляется при каждом нажатии git. Моя рекомендация заключалась бы в том, чтобы выяснить, каковы имена и местоположения плоских файлов, а затем символически связать каталог, в котором они хранятся, с вашим $OPENSHIFT_DATA_DIR, чтобы на них не повлиял git push. Вы можете сделать это с помощью перехвата действий, как это делает картридж WordPress здесь: https://github.com/openshift/wordpress-example/blob/master/.openshift/action_hooks/deploy