2013-08-28 5 views
5

申し訳ありませんが、これはすでに回答済みです。EF移行のRebasing

私は自分のプロジェクトで多くのEF移行を行っていますが、正直言ってそれはちょっと混乱しています。私のgitブランチングがマイグレーションを台無しにするかどうか、この頭痛の解決策があるかどうかを見たいと思います。

マイグレーションを「再配置」したいと考えています。これは可能ですか?それを行う "公式の"方法はありますか?

rebaseでは、EFにデータベーススキーマを見て、スキーマを満たした単一の移行を作成するように指示します。

ありがとうございます!

答えて

4
  1. 既存の移行削除
  2. 追加-移行SetupDatabaseFromScratch
  3. アップデート - データベース

ああ、ほとんど忘れてしまった - バックアップすべて

をそして、あなたはからあなた_MigrationHistoryテーブルを切り捨てる必要がありますデータを保持したい場合は、データベースを作成します。しかし、もう一度、そのようなことをする前にバックアップを作成してください。

+0

私はupateデータベースを適用すると、テーブルとして失敗します(移行の最初のもの)が既に存在します。私はEFがモデルとDBが同期していないと思うので、更新を適用しようとしていることを認識しています。私はちょうど私の最初の作成モデル、DB(ハッシュコードに一致)と整列したい。それは可能ですか? – codeputer

+0

-Scriptオプションを指定してupdate-databaseを実行する必要があります。データベースの既存のオブジェクトが作成されているスクリプトの一部を削除します(ただし、_migrationHistory部分は削除しないでください)。 – dantix

+0

@codputer正しいことを行う方法はたくさんありますが、単にGoogleの「既存のデータベースへの最初の移行をコード化する方法」があります。これは一般的な問題です。 – dantix

関連する問題