【问题标题】:rails rolling back migration permanently then branchingrails 永久回滚迁移然后分支
【发布时间】:2011-03-15 14:56:14
【问题描述】:

这是一个关于迁移版本的 Rails 问题

所以我已经存在一些迁移。即在我的 db/migrate/ 文件夹中,我有一些像这样的文件:

  • 1_add_products.rb
  • 2_add_customers.rb
  • 3_add_addresses.rb
  • 4_add_tags.rb

我已经运行了“rake db:migrate”,所以当前版本是 4。我想永久返回到版本 2 并从那里开始分支。所以我做了“rake db:migrate VERSION=2”,这正确地还原了更改以反映版本 2。但是,每当我现在运行“rake db:migrate”时,它都会运行所有 4 个迁移并将我放回版本 4 .

有没有办法永久回到一个修订版,然后从那里开始新的分支?我可以在回滚到版本 2 后简单地删除迁移 3 和 4 吗??

我问的原因是因为在我回滚到版本 2 后,我需要添加新的迁移并运行“rake db:migrate”,我绝对不希望包含迁移 3 和迁移 4。

【问题讨论】:

    标签: ruby-on-rails migration rollback


    【解决方案1】:

    删除应该可以正常工作。只要确保它在所有地方(开发、登台、生产)都回滚,否则你会遇到一些奇怪的问题。

    是的,肯定回滚 THEN delete,否则你的数据库会认为它处于实际上不存在的状态。

    【讨论】:

      猜你喜欢
      • 2018-10-31
      • 2013-07-06
      • 2011-10-31
      • 2017-10-05
      • 2010-10-15
      • 2019-12-06
      • 2018-04-03
      • 1970-01-01
      • 2021-08-13
      相关资源
      最近更新 更多