繁体   English   中英

如果已经运行了来自其他分支的更高版本的迁移,那么如何在Heroku上运行从Git分支进行的迁移?

[英]How does a migration from a Git branch get run on Heroku if a later migration from a different branch has already been run?

假设我创建了一个分支( new_branch )。 在该分支中,创建了一个迁移( migration_1 )。

后来,我切换回master 然后,我创建一个迁移( migration_2 ),推送到Heroku,然后在Heroku上运行迁移。

稍后,我将new_branch合并到master ,然后将master推送到Heroku。

当我尝试在Heroku上运行迁移时,不会跳过migration_1而不运行它,因为它是在migration_2之前创建的,而该migration_2已经运行了吗?

每个迁移都附带一个迁移时间戳。 成功应用的迁移列表存储在Rails应用程序内的模式表中。

当您运行migration_2 ,此条目将添加到数据库中。 合并migration_1 ,Rails将检测到尚未应用更改,因为架构表中缺少该条目,并将运行该更改。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM