我有一个 Symfony 3 应用程序,我使用部署程序来部署我的应用程序。我也在使用Doctrine Migrations来迁移我的数据库。
我使用symfony3 配方。
当我运行时dep deploy
,部署程序会迁移我的数据库。但是,当我运行dep rollback
它时,它不会回滚相应的学说迁移。
我已经通过谷歌和 Stackoverflow 搜索找到解决这个问题的人,但我似乎找不到任何人。
你有个好主意吗?
我有一个 Symfony 3 应用程序,我使用部署程序来部署我的应用程序。我也在使用Doctrine Migrations来迁移我的数据库。
我使用symfony3 配方。
当我运行时dep deploy
,部署程序会迁移我的数据库。但是,当我运行dep rollback
它时,它不会回滚相应的学说迁移。
我已经通过谷歌和 Stackoverflow 搜索找到解决这个问题的人,但我似乎找不到任何人。
你有个好主意吗?
您可以使用向后兼容的迁移,这样就不需要回滚。
由于它可能导致数据库混乱,因此定期清理 BC 层通常是个好主意。例如:
full name
列的迁移,而是拆分为first name
and last name
。该full name
列仍然保持向后兼容;full name
列,因此不需要迁移回滚;full name
值都被拆分,first name
然后last name
完全删除该full name
列;full name
,因此不需要迁移回滚。