根据Rails doc:http://guides.rubyonrails.org/migrations.html
"Active Record跟踪哪些迁移已经运行,因此您只需更新源并运行rake db:migrate."
ActiveRecord如何实际执行此操作?Active Record在哪里存储数据?
我怀疑这可能存储在数据库本身?在某个地方的桌子上.
在我的开发机器上,我运行了所有迁移.然后我使用mysqldump复制了生产数据库.然后我运行了"rake db:migrate:status",它正确显示了需要在生产数据库上运行的迁移.
我以前认为ActiveRecord使用时间戳跟踪上次迁移运行.但我认为这不正确,因为ActiveRecord正确运行从另一个代码分支合并的"较旧"迁移.
有内心知识的人可以详细说明吗?谢谢