合并db/migration文件

gui*_*ng5 5 ruby-on-rails ruby-on-rails-3

除了手动拆分schema.rb之外,还有一种方法可以将rails db migration files合并到每个表的1个文件中吗?

我的大多数迁移文件都是在开发期间创建的,并不代表真正的数据更改.由于历史原因,这些文件仍可在源代码管理系统上访问.保留那些不必要的文件我感到很不舒服.

Rog*_*ger 13

好吧,我可以想象你想要一个干净的开始.在您的第一个版本的项目开发模式中,您不希望所有单独的迁移文件.虽然他们不能明显受伤.

基本上你能做的就是这个.

首先备份您的架构和数据.

db/schema.rb包含(或应包含)最新版本的模式.否则运行:

rake db:schema:dump
Run Code Online (Sandbox Code Playgroud)

现在您可以清理迁移文件夹.

然后运行:

rake db:drop
rake db:schema:load
Run Code Online (Sandbox Code Playgroud)

最后一个命令运行db/schema.rb并创建新架构.这应该会带您到数据库的最新版本.

显示数据库任务

rake -T db


Mar*_*ser -7

别打扰。旧的迁移文件不会造成任何损害,并且可能使维护更容易。让它们保持原样。