GitブランチとRailsマイグレーションの操作方法 質問する

GitブランチとRailsマイグレーションの操作方法 質問する

私は、多数の Git ブランチを持つ Rails アプリに取り組んでおり、その多くには DB 移行が含まれています。注意するよう努めていますが、マスターのコードの一部が、別のブランチで削除または名前変更された列を要求することがあります。

  1. Git ブランチを DB 状態と「結合」するための適切なソリューションは何でしょうか?

  2. これらの「状態」は実際には何でしょうか?

    データベースのサイズが数 GB の場合、それを複製することはできません。

  3. では、マージの場合はどうなるのでしょうか?

  4. このソリューションは NoSQL データベースにも適用できますか?

    現在、MySQL、mongodb、redisを使用しています


編集:非常に重要な点について言及するのを忘れていたようです。私が興味があるのは開発環境ただし、データベースのサイズは数 GB と大きくなります。

ベストアンサー1

任意のブランチに新しい移行を追加するときは、rake db:migrate移行の両方を実行してコミットします。そして db/schema.rb

これを実行すると、開発時に、移行セットが異なる別のブランチに切り替えて、 を実行するだけで済みますrake db:schema:load

これはデータベース全体を再作成すると、既存のデータは失われます

おそらく、非常に注意深い 1 つのブランチからのみ本番環境を実行することになるため、これらの手順は適用されません (rake db:migrateそこでは通常どおり実行します)。ただし、開発環境では、スキーマからデータベースを再作成することは大した問題ではありませんrake db:schema:load

おすすめ記事