【发布时间】:2018-03-28 20:10:47
【问题描述】:
在我使用 Laravel 5.1 构建的应用中,我有一个分支 dev。
我必须实现 2 个新功能,所以我创建了第一个分支(从 dev 开始),它需要 2 个表(所以是新的迁移),然后,当我完成它时,我创建了第二个分支(从 dev 开始)以及这个功能需要一个不同的表,所以新的迁移。
所以我的情况是这样的:
branch 1 -> migration1
branch 2 -> migration2, migration3
但现在我需要更改(许多列)与 branch1 相关的表,因此我应该回滚迁移,因为我不会为更改进行新迁移,但我会回滚迁移并重新创建。
但我现在的问题是,如果我返回分支 1 并尝试这样做:
php artisan:migrate rollback
最新的迁移(在我的数据库上)是 branch2 的表(migration2,migration3),而不是与 branch1 相关的表(migration1)。
那么管理多个分支之间迁移的正确方法是什么?
【问题讨论】:
-
首先在
branch2回滚迁移,然后移动到branch1并进行更改。 -
谢谢你的回答,是的,但我相信这种方式很混乱,现在这不是问题,因为只有 2 个分支,只有 2 个特性,但如果我有很多分支,有很多迁移,我应该进入任何分支并一一回滚。
-
但是没有别的办法。这就是 git 和迁移的工作原理。
-
好的,谢谢你的回答!
标签: laravel database-migration