私は Entity Framework 5 DB-First プロジェクトを持っており、現在 TFS から Git に移行しています。TFS では、RedGate の SQL ソース コントロールを使用して DB を最新の状態に保ちました。これは、分岐が非常に難しいため、とにかく誰もがトランクから離れて開発していると仮定すると、適切な方法でした。 DB スキーマ。
Git を使用するようになったので、db の変更を機能ブランチの一部にしたいと思います。Git ではブランチからブランチへのジャンプが非常に簡単であるため、開発者はデータベースの変更を含む機能からそれらの変更のない機能にジャンプする可能性があると思います。コードはとてもうまく更新されますが、DB はどうでしょうか? RedGate の製品がそのようなフラッシュで上下の移行を処理できるとは思えません。それとも間違っていますか? そして、RedGate がこれらの上下の移行を処理できない場合、私のコードでそれを行う正しい方法は何ですか?
ところで、私は他の同様の質問を検索し、これを見つけましたが、答えは機能ブランチに移行スクリプトを含めることです。「アップ」移行についてはこれで十分ですが、たとえば、あるブランチで機能を作成している場合、別のブランチに切り替えて他の誰かのプル リクエストのコード レビューを行います。私のブランチのローカルデータベースは、何らかの形で元に戻す必要があります。しかし、どのように?
更新: RedGate は、この記事を紹介して、サポート コールに応答しました。基本的に、ブランチを切り替えたい場合は、データベースをソース管理からリンク解除/再リンクする必要があります。また、ブランチを作成またはマージすることはできません。要するに、うーん。より良い提案はありますか?