2017-10-25 2 views
0

私はデータベースマイグレーションのためにフライウェイを使用しています。 別の環境(qa、demo、prod)で使用する必要があります。すべての移行を実行するベースフォルダと環境固有のフォルダを作成しました。環境に基づいて(アプリケーション起動時にアプリケーション変数を読み取るように設定されている)、特定のフォルダが選択され、ベースと環境固有のフォルダ内の移行が実行されます。環境固有のフライウェイティングバージョン管理

私が直面している問題はバージョン管理です。基本フォルダーの現在のバージョンがXであるとします。次のマイグレーションを環境固有のものにしたい場合は、X + 1を付けます。しかし、これは特定の環境(デモ、qaやprodではなく)でしかないかもしれません。そのため、一連の移行は環境間で不規則です。 回避策は、シーケンスを規則的に保つためのダミーマイグレーション(qaとprod)でもかまいませんが、これにより、現在baseとenvの両方をチェックインする必要がある開発者に別の制約が課されます。最新の番号のフォルダ。 (合併する支店では悪化する)。 別の提案は、特定の番号(大)から環境固有の移行を開始することです。これにより、ユーザーはベースで通常の番号付けを進めることができ、環境固有のフォルダ内で大きな数に増分し続けることができます。

しかし、私はまだこれが良い方法であるとは確信していません。

は多くの努力を必要としない環境全体でバージョニング(新しいバージョンは、そのフォルダ内の最後の見て、ちょうど追加することができます)

答えて

1

利用X.1の代わりに、X + 1を維持行うに任意のより良い方法があります。素敵で簡単で、既存の番号付けを妨げません。

+0

X.1もベースである可能性があります(たとえば、create tableの後にalterを実行するなど)。これは本当に私の原因を助けるものではありません。 – enigma

関連する問題