13

メイン ブランチ (devlop) とフィーチャー ブランチの両方で活発な開発が行われているとします。どちらも時々移行を追加しています。フィーチャー ブランチをメイン ブランチにマージする前に、メイン ブランチにリベースします。

したがって、最新の開発ブランチの移行の後にすべての機能ブランチの移行が行われるのは理にかなっています。

これらのファイルの名前を変更する便利な/推奨される方法はありますか? ダミーの移行を生成し、それらに対して生成されたタイムスタンプを再利用することはできますが、私が知らないベスト/一般的な方法があるのだろうか?

4

2 に答える 2

1

これを行うための Rails 機能は見つかりませんでしたが、migration touchコマンドか何かがあると便利です。いずれにせよ、最近私たちが行っていることは、新しい移行を生成し、タイムスタンプをコピーして、古い移行の名前を変更するだけです。通常、移行は独立しているため、順序は問題になりませんが、順序の依存関係に遭遇することがあるため、タイムスタンプを更新する必要があります。

于 2014-05-29T19:12:35.490 に答える
0

質問のコメントで述べたように、ファイル名を変更する必要はありません。

また、他のマイグレーションが存在する前に、他のマイグレーションに依存してマイグレーションが書き込まれることは通常は起こらないことも言及されました。(もしそうなら、あなたは正しいことをしていません)。したがって、必要性は生じないはずです。

まれに、機能の開発者が複数の移行をマージしたい場合 (機能の移行の間にトランクの移行がある場合) は、これらを新しい (または最後の) 移行にマージする必要があります。いずれにせよ、依存関係が満たされていることを確認するのは機能開発者の責任です。

そうすることで、他の開発者に迷惑な副作用が生じる可能性もあります。schema_migrations のタイムスタンプが利用できないため、同じ移行がデータベースで再度実行されます。

于 2011-06-01T10:38:39.897 に答える