在开发过程中,我经常运行 Doctrine 的schema:update
命令来将数据库模式与我不断变化的实体定义同步。一旦我准备好提交一个功能,我想将所有更改汇总到一个可以提交到 git的迁移类中。
问题是,为了运行,migrations:diff
我需要将数据库模式回滚到我开始弄乱schema:update
. 这样做schema:drop
不好migrations:migrate
,因为删除模式不会删除migration_versions
表。这意味着在运行现有迁移并创建新迁移之前,我必须进入 MySQL 并手动删除所有数据库。
它有效,但感觉就像我做错了。有更好的想法吗?