Laravel 迁移 - 永远保留它们?什么是最佳实践?

Laravel Migrations - keep them forever? What is best practice?

我已经与 Laravel 一起工作了大约几个月 - 喜欢它。对管理数据库更改的推荐工作流有疑问。

我有一个 test 数据库用于开发我的应用程序,当我相当高兴时,我创建了一个 production 数据库通过复制 phpMyAdmin 中的结构。我在 phpMyAdmin 上构建了初始数据库,因为我不熟悉 Laravel 迁移。

现在,我更好地理解了 Laravel 迁移的强大功能,并希望使用它们继续更新 test 数据库并移动生产.

的那些变化

我的行动方案是什么?我可以删除 app/database/migrations 目录中的所有内容并从头开始吗?在我的 testproduction 中调用 php artisan migrate 会不会有问题环境?

提前感谢您的回复!

简答:没问题。如果你只是 add/alter/remove tables/columns 在 up() 和 down() 方法中。

更长的答案:仍然没问题。只要您不删除不是在 up() 方法中创建的 table。

但是假设您要与另一个开发人员合作,那个人也想在本地数据库上进行开发。但是您没有它的迁移 - 因此新开发人员需要 运行 来自测试数据库的初始结构,然后应用新的迁移。

在那种情况下,我将从 1 个大迁移开始,在其中创建所有初始 tables,并在 down() 中删除那些 tables,因此新开发人员可以只是 运行 迁移并开始编码。

编辑:在初始结构迁移之后,只需在开发时添加新结构;)