2009-06-17 16 views

答えて

7

私は、a)最後の移行であり、b)ソース管理ではない限り、元の移行を編集する傾向があります。これにより、コードの他のすべてのコンシューマーにとって、きれいな移行パスが提供されます。重要なことは、マイグレーションが、発生する可能性が最も早いデータベース状態からエラーなく実行できることです。

1

複数の開発者と作業している場合は、既存の移行を編集することは危険です。

あなたの同僚が既に元の移行を移行していた場合、彼が更新すると、彼は新しいコードを手に入れず、後悔することになります。これは追跡が非常に難しい問題です。良いデニゼーションの側でエラーが発生し、更新された移行を作成するだけです。あなたは、それはまだ他の開発者や一部の自動ビルド設定によって実行されていないことを確認できた場合

0

しか既存の移行を編集します。安全な側にするために、コミット済みの移行ファイルを編集しないでください。バグが非常に深刻で、移行が最初に実行されないのであれば(その場合、なぜコミットしたのですか?)

また、アプリケーションの別の場所からコードを呼び出すマイグレーションでは、実行時に正しいバージョンのコードを使用して実行されるように特別な注意が必要です。それ以外の場合は、モデルの微妙な変更によって、以前の移行が大幅に狂ってしまいます。

0

これと以下の回答を読んだ後でも、難しい方法を学んだだけです。オリジナルを編集しないでください。最終的に開発プロセスを追跡できなくなり、制御下に戻ることは難しくなります。

関連する問題