合并功能分支时如何处理rails迁移?

时间:2013-07-03 08:26:29

标签: ruby-on-rails-3 migration

在rails 3中,db:migrate任务如何确定要运行哪些迁移?

考虑以下用例:

  • 开发人员A在自己的功能分支中的时间戳t1创建迁移
  • 开发人员B在他自己的功能分支中的时间戳t2创建迁移
  • 开发者B合并他的分支,db:migrate在服务器上运行
  • 开发者A合并他的分支

由于t1较早,开发人员A的迁移是否会运行?

我注意到了schema_migrations表,我想知道是否还会运行任何尚未运行的迁移。

1 个答案:

答案 0 :(得分:21)

您的预感是正确的 - 任何不在schema_migrations中的迁移都将运行,并且它们将以时间戳顺序升序运行。

在这种情况下,A合并后下次运行db:migrate时,将运行迁移t1。