Rails 2的标准schema.rb
文件在文件顶部的注释块末尾有以下内容:
# It's strongly recommended to check this file into your version control system.
我看到的Rails 3schema.rb
也说了同样的话.我认为这句话说明了一切.
Update in response to comments:
任何与schema.rb
有关的更新/合并问题都应该通过整理冲突的迁移来解决,这样schema.rb
将作为解决实际问题的副作用得到修复.
是的,schema.rb
是一个生成的文件,但它仅在文本编辑器生成pancake.rb
模型文件或生成未编辑的脚手架文件的意义上生成.
是的,您可以通过构建一个新数据库,然后运行所有迁移来重建schema.rb
文件.但是,您应该时不时地清理旧的迁移,以避免每次都要判断数百个迁移文件,因此"重建并运行所有迁移"通常不是高度活跃的项目中的选项.