Как использовать Git на Laravel с Voyager?

Может ли кто-нибудь помочь мне с помощью администратора Voyager с помощью Git? Например, если вам нужно добавить новый тип контента, как добавить git для будущей рассылки и развернуть его на удаленном сервере?

0

Решение

Git, как и SVN, Mercurial и другие, работает только в файловой системе. Базы данных MySQL и Postgres технически не являются частью файловой системы вашего проекта, поэтому вы не можете добавить эти изменения в традиционную VCS.

Помимо изменения вашей базы данных с MySQL / Postgres на SQLite (что, кстати, является хранится в виде файла в каталоге вашего проекта), Git не будет иметь ничего общего с вашей базой данных.

если ты действительно Если вам захочется пройти контроль над версией вашей базы данных в файловой системе, то вы можете рассмотреть следующее:

  1. Создайте дамп MySQL из всего, что вы хотите сохранить. Заглянуть в webhooks запустить команду для импорта дампа после каждого нажатия. Обновите дамп по мере необходимости.
  2. Используйте миграции и семена, чтобы сохранить снимок вашей базы данных. Загляните в webhooks, чтобы запустить соответствующие команды ремесленников, чтобы разорвать, перенастроить и заполнить базу данных после каждого нажатия. Обновите ваши семена по мере необходимости.
  3. Переключитесь на SQLite. Я не знаю, будет ли это работать, потому что я даже не знаю, совместим ли Voyager с SQLite.

Помимо этого, вы, вероятно, должны изучить процесс развертывания вашей базы данных, который включает в себя такие инструменты, как Capistrano управлять тем, что вам нужно.

1

Другие решения

Для продавца:

Вам следует НЕ редактировать файлы внутри папки Vender. Если это просто необходимо переопределить их. Таким образом, вы можете синхронизировать файлы. поиск, как переопределить контроллер / модели от поставщика в Laravel.

Для базы данных:

У меня была похожая проблема в одном из моих проектов, нам пришлось добавить базу данных в git, потому что оттуда исходили некоторые конфигурации. Так что я сделал, это создать псевдоним в .bash_profile чтобы закрепить базу данных дампа и добавить в процесс git.

Мой псевдоним был такой:

alias addsqltoprj ="mysql -uroot -ppassword database > /path_to_pj/transfer/dump.sql && git add /path_to_pj/transfer/dump.sql"

поэтому каждый раз, когда происходили изменения в базе данных, я просто сбрасывал их и добавлял в git staging.

когда кто-то тянет, они делают противоположное с другим псевдонимом

alias pullimportsql ="git pull origin develop && mysql -uroot -ppassword database </path_to_pj/transfer/dump.sql"

таким образом, мы могли бы постоянно синхронизировать базу данных.

Наша база данных была довольно маленькой, поэтому у нас не было проблем с этим методом, но если у вас есть что-то большее, я бы порекомендовал вам проверить https://git-lfs.github.com/ и измените псевдонимы, используя вместо этого git-lfs

0

По вопросам рекламы [email protected]