ruby-on-rails – schema.rb由于其他分支中的迁移而搞砸了

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – schema.rb由于其他分支中的迁移而搞砸了前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
目前,我正在使用一个巨大的rails应用程序和多个分支,每个应用程序都有一个新功能.
它发生很多功能将需要迁移,这不应该是一个问题,直到您将其与主机合并:schema.rb已更新与您的开发人员数据库的信息!

澄清:

1. Branch A has migration create_table_x
2. Branch B has migration create_table_y
3. Branch A adds another create_table_z and runs db:migrate
4. You want to merge Branch A with Master and you see table_x,table_y and table_z in the schema.rb of Branch A.

在分支中的每次迁移之前重置数据库种子,或者每个分支创建数据库不是一个选择.由于2 GB的sql数据的巨大的大小,它将不可行.

我的问题:

每次迁移重建后,是否真的需要将schema.rb保存在存储库中?

如果是这样,是否可以构建迁移而不是数据库转储的模式?

解决方法

您应该将架构保留在您的回购中.运行迁移将在您的schema.rb文件中修复合并冲突.
我的简单介绍你的问题

>是否需要?不是真的,而是良好的做法.

“It’s strongly recommended to check this file into your version
control system.” -schema.rb

有可能吗是的,但你可能想问自己,如果你真的保存任何时间这样做,手动或建立模式,你的迁移在其他地方推入它.

您使用的附加益处

rake db:schema:load

rake db:schema:dump

http://tbaggery.com/2010/10/24/reduce-your-rails-schema-conflicts.html

猜你在找的Ruby相关文章