【问题标题】:incomplete migrations- stuck in generating new migrations不完整的迁移——卡在生成新的迁移中
【发布时间】:2016-05-18 17:27:29
【问题描述】:

我在这里遇到了非常糟糕的情况,正在从事 Laravel 5 项目。以前由另一个开发人员开发。该开发人员一开始使用migration generators 创建了几个表,并使用迁移添加了一些columns。之后,他立即使用一些 sql GUI 添加了表 columns。我得到了sql dump,我将它导入并在我的本地机器上进行设置,现在当我使用php artisan make:migration create_myTableName_table --create="myTableName" 创建table 时,表迁移已成功创建,但是,当我执行php artisan migrate 时,它给了我@ 987654330@ 我检查了迁移文件夹并将其与当前版本的someTable 匹配,我可以看到列不同,与其他表相同。

在这种情况下处理这个问题的最佳情况应该是什么,我想跟上Laravel migrations generator 以便将来如果任何其他开发人员想要处理这个项目,他只需要运行迁移命令来迁移数据库或创建表或创建列...我应该重写所有迁移吗?请帮忙。谢谢

【问题讨论】:

    标签: laravel laravel-5 database-migration laravel-migrations


    【解决方案1】:

    又快又脏?

    删除当前的迁移文件。清除您的 migrations 表并导出整个数据库。将 SQL 转储放入 repo 并指示其他开发人员在运行 php artisan migrate 之前将其导入。导入转储并截断 migrations 表后,您可以创建新迁移,而不会与旧迁移发生进一步冲突。

    感到雄心勃勃?

    使用 migrations-generator 之类的包根据您当前的数据库结构生成迁移。然后,迁移出去。

    【讨论】:

    • 如果你删除当前迁移并截断迁移表,Ambitious 方式可能与快速而肮脏的方式一样快。
    【解决方案2】:

    鉴于您的情况,我会将 .sql 导出放在您的存储库中,清除旧的、损坏的迁移,并创建一个最初导入数据库转储的新迁移。然后像往常一样创建迁移。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-07
      • 2019-05-16
      • 2013-02-16
      • 1970-01-01
      • 2022-06-18
      • 2012-12-06
      相关资源
      最近更新 更多