我正在开发的rails应用程序到目前为止已经有大约35次迁移.由于应用程序是作为一个实验开始的,因此我在不同的想法之间来回走动时,在迁移过程中存在相当多的毫无意义的流失.
将迁移1-35折叠到一个迁移中是否有任何缺点?我计划通过让第一次迁移加载现在的架构并删除所有以前的迁移来实现此目的.
我目前是唯一一个从事这个项目的人,如果这有所作为的话.
如果你有源控制下你的代码(你做的有源控制下你的代码,不是吗?),那么我会说有没有真正的伤害,只要你接受回滚架构更改将需要的旧要么恢复迁移或全新迁移.在确定任何事情之前,请务必了解其含义并接受它们.
您当前的schema.rb可以构成将启动新集的新单个迁移的基础.
请注意,如果您在现有迁移中进行数据操作操作,例如加载静态数据和/或可能进行后续转换,则需要在某处处理这些操作.这是我绊倒了几次......
我会留着他们.每次新开发人员签出项目时,不必担心必须运行大量迁移.他总能跑
rake db:schema:load
这要快得多,而不是跑步
rake db:migrate
有时迁移可能会使用不再存在的模型或创建表,然后再销毁它们,浪费宝贵的CPU时间.最好将它全部编译到db/schema.rb中,让开发人员运行rake db:schema:load