2

この質問では、次のような状況を特に見ています。

  • 機能ブランチをマスターにマージする
  • フィーチャー ブランチには新しい移行があります。123_add_foo.rb
  • マスター ブランチには、機能ブランチにない新しい移行があります。456_add_bar.rb

オプション1

schema.rbファイルをマージすると、結果は次の形式になります

create_table "something", :force => true do |t|
  ...
  t.string   "foo" # foo was added to schema.rb earlier, so appears first
  t.string   "bar"
end

オプション 2

ただし、実行rake db:migrateすると、次のように並べ替えられます。

create_table "something", :force => true do |t|
  ...
  t.string   "bar" # bar was added to the master branch first
  t.string   "foo" # so this appears before foo here
end

質問

schema.rbバージョン管理に保存する必要があるのはどれですか?

オプション 2 は、サーバーを移行するときに起こることと一致します。移行を最初から実行するときに起こることと、これが一致しなくなっても問題はありませんか?

4

0 に答える 0