我对此很陌生。我有一个生产服务器,需要从github部署最新版本的应用程序,所以我使用Capistrano。
最新版本对数据库进行了一些更改,因此进行了大量迁移,因此我将使用deploy:migrate进行部署。
所以我的问题是,如果我将一些数据添加到创建的新列中(它不会更改表中的任何现有列,只创建新的表和列)然后想要回滚,那么将cap deploy:rollback还可以反转所有迁移吗?是否删除了这些新列中的数据并将数据库恢复到以前的状态(假设除了数据库中的新增内容之外我没有进行任何数据更改)?
谢谢!
答案 0 :(得分:8)
不,它不会。您需要通过rake手动运行这些迁移的下方部分,然后回滚。
但是,如果你当前的应用程序不会受到新行的影响,那么它不会造成任何伤害。