撤消上次Alembic迁移

时间:2018-01-13 17:17:25

标签: python sqlalchemy alembic

我使用alembic revision --autogenerate创建了一个迁移,并使用alembic upgrade head将其应用到我的开发数据库,​​然后意识到这不是我想要的。

如何恢复迁移,以便我可以调整它并再试一次?

1 个答案:

答案 0 :(得分:29)

假设您只想返回一个版本,请使用alembic downgrade为-1的relative migration identifier

alembic downgrade -1

这将运行最新版本的downgrade()方法,并更新修订表以指示您现在所处的修订版。

如果您需要返回多次迁移,请运行

alembic history

查看项目中所有迁移的列表(从最新到最旧),然后复制并粘贴要返回的迁移的标识符:

alembic downgrade 8ac14e223d1e

目前没有命令从您的版本目录删除迁移,因此如果您想彻底清除所有错误迁移的痕迹,则需要删除版本文件(如{{ 1}})手动。