目前,我正在使用一个巨大的rails应用程序和多个分支,每个应用程序都有一个新功能.
它发生很多功能将需要迁移,这不应该是一个问题,直到您将其与主机合并:schema.rb已更新与您的开发人员数据库的信息!
它发生很多功能将需要迁移,这不应该是一个问题,直到您将其与主机合并: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