12

我有一个 Zend Framework/Doctrine 1.2 项目,它由git. 在 git 中从分支切换到分支时如何跟踪迁移类?

例如

分支 A我有一个迁移类文件 (038_version.php)

分支 B我有一个迁移类文件 (039_version.php)

Doctrine 将根据文件名顺序应用迁移,因此我必须在分支 B 之前推出分支 A 中的功能才能使 Doctrine 迁移工作。

我是否应该将所有迁移保留在自己的分支中并在上线之前更改数字?

4

2 回答 2

1

由于有一个分支来隔离开发工作,因此如果您询问依赖于多个分支的任务,则所述分支会妨碍您。
最好将所有这些分支合并到一个部署分支中,以便可视化相关文件以供 Doctrine 处理。

NDM请指出“复杂分支系统中的数据库迁移”以更好地说明 OP 的问题:

你可以让它适用于简单的分支模式,但对于任何复杂的东西,这将是一场噩梦。

我现在使用的系统采用了不同的方法:我们无法进行增量迁移,只能从基线重建数据库

NDM 补充说:

在分支系统中正确地进行顺序迁移是不可能的

于 2011-04-19T07:01:18.663 回答
0

如果您有这种情况,您将永远不会有同步的分支。此外,如果您有像上线一样干净的数据库,则不需要迁移,只需在实时站点上删除它们,然后运行

migrations:diff

它会为你创建一个新的数据库迁移,你就在游戏中。

于 2016-06-15T14:44:38.587 回答