2017-08-22 8 views
-1

誰かがgitを使ってadmin Voyagerを使用して私を助けることができますか?たとえば、新しいコンテンツタイプを追加する必要がある場合、gitを将来のプッシュに追加してリモートサーバにデプロイする方法は?VoyagerでGit on Laravelを使用するには?

+1

あなたの質問は不明確であり、またあると思われますVoyager自身とは無関係です。 Voyagerがデータベースに加えた変更をバージョン管理にコミットする方法について質問していますか? – maiorano84

+0

はい、自分のローカル環境から作業する必要があります。変更をサーバーにプッシュする必要があるとき、その変更をどのようにプッシュするのですか? Ex。新しいパン。 Gitは私のデータベースにベンダーのフォルダとコンテンツを含めていません –

答えて

1

GitとSVN、Mercurialなどは、ファイルシステム上でのみ動作します。 MySQLとPostgresのデータベースは技術的にプロジェクトのファイルシステムの一部ではないため、従来のVCSにこれらの変更を追加することはできません。

あなたのデータベースをMySQL/PostgresからSQLiteに変更する以外のところでは(つまり、がプロジェクトディレクトリにファイルとして保存されています)、Gitはあなたのデータベースとは関係ありません。

あなた本当には、ファイルシステム上に制御データベースのバージョンを維持する手間をかけて行きたい、そして、あなたが潜在的に次のように見ることができる場合:

  1. は、あなたが望むすべてのMySQLのダンプを作成します。保存する。 webhooksを参照し、すべてのプッシュの後にダンプをインポートするコマンドを実行します。必要に応じてダンプを更新してください。
  2. 移行とシードを使用してデータベースのスナップショットを保持します。 webhooksを調べて適切な職人のコマンドを実行して、すべてのプッシュ後にデータベースを解体して再移行してシードします。必要に応じて種子を更新してください。
  3. SQLiteに切り替えます。私はVoyagerがSQLiteと互換性があるかどうかわからないので、これがうまくいくかどうかわかりません。

これ以外にも、必要なものを管理するために、Capistranoのようなツールを含むデータベースの展開プロセスを検討する必要があります。

ベンダーについては
0

:あなたはベンダーのフォルダ内にない編集ファイルをすべき

。それが必要な場合は、それらをオーバーライドするだけです。そうすれば、ファイルを同期させた状態にすることができます。 Laravelのベンダーからコントローラ/モデルをオーバーライドする方法を検索します。データベース用の

私たちは、いくつかの構成は、そこから来ていたので、gitのにデータベースを追加しなければならなかった私のプロジェクトの一つで同様の問題がありました。そこで、ダンプデータベースを固定してgitプロセスに追加するためにエイリアス.bash_profileに作成します。そう毎回、私はちょうどそれをダンプし、gitのステージングに追加されたデータベースの変更があった

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

私のエイリアスはのようでした。誰かが、彼らは別のエイリアス

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

我々は同期のすべての時間を、データベースを保つことができるこの方法で反対のことをやっていた引っ張る

当社のデータベースがかなり小さかったので、私たちは、この方法では問題がなかったが、あなたは何か大きなものを持っている場合、私はhttps://git-lfs.github.com/をチェックすることをお勧めしますし、gitの-LFSを使用して別名を変更します代わりに

関連する問題