PHP + MySQL + Apache プロジェクトのバージョン管理は可能ですか? たとえば、新しいテーブルを追加した場合、それをコミットできますか?
ありがとうございました。
PHP + MySQL + Apache プロジェクトのバージョン管理は可能ですか? たとえば、新しいテーブルを追加した場合、それをコミットできますか?
ありがとうございました。
データベースをバージョン管理下に置くのは普通ではありません。バージョン管理にチェックインできるように開発に sqlite データベースを使用する開発者もいますが、sqlite 構文は MySQL とは異なる可能性があるため、問題が発生する可能性があります。
ただし、データベース スキーマと移行ソース管理を維持できます。開始するには、 mysql-php-migrationsなどのプロジェクトを参照してください。
http://net.tutsplus.com/tutorials/other/easy-version-control-with-git/には、Git で PHP を使用するための優れたチュートリアルがあります。
PHP スクリプトに Git を使用するのは問題ありませんが、データベースへの変更を追跡するのは少し面倒です。データベース構造を作成する SQL スクリプトがある場合、これらは問題なくバージョン管理できます。それ以外の場合はmysqldump
、変更を行った後に構造を SQL スクリプトに出力するために使用できます。
mysqldump -d -h localhost -u root -pmypassword mydatabase > dumpfile.sql
git を使用して、必要なデータベース構造を作成する PHP スクリプトと SQL スクリプトを追跡できます。もちろん、これらの SQL スクリプトはバージョン管理され、任意の状態でデータベース スキーマを再作成できます。
Git は本質的に SCM、つまりソース管理を意味します。mysql のテーブルはバイナリ ファイルとして保存されるため、あまりお勧めできません。
ただし、これらのテーブルを作成するSQL クエリを保存して、必要に応じて再作成することができます。
phpに関しては、それはすべて良いでしょう。
私は最近、バージョン管理下で MySQL データベースへの変更を維持するのに役立つ非常に単純なシェル スクリプトをリリースしました。