1

长话短说,我有一个 Laravel 4 项目,其中有一个充满迁移的文件夹。我不确定迁移是否实际上与数据库的当前状态一致,我的客户也是如此,因此他指示我不要为我必须进行的数据库更改编写迁移,而只是进行它们。我想使我对数据库所做的更改可迁移,至少从当前状态迁移到当前状态。

因此,我为我的更改添加了迁移,并将所有现有迁移移出迁移文件夹。这样,我可以运行migratemigrate:rollback仅测试我的迁移。哪个工作正常。但我不想从 repo中删除现有的迁移,因为它们需要在那里满足它们与当前状态一致的微小机会。让我烦恼的是,它们一直出现在 Git 中,我希望它们不碍事。最终结果将是我的迁移文件夹将仅包含我为此作业编写的迁移,在此作业期间,但存储库最终将包含所有迁移。

什么是让现有文件脱离 Git 的最佳方式,同时仍然给我想要的东西?

或者,也许有更好的方法来仅测试我的迁移?

谢谢!

4

1 回答 1

1

这很简单,不要管迁移文件夹,为您的迁移创建另一个文件夹,例如app/foo/migrations并将完全相同的路径文件夹添加到您的.gitignore.

每当您需要运行迁移时,只需运行以下命令:

php artisan migrate --path=app/foo/migrations

您可以在有关迁移的 Laravel 文档中了解更多信息

于 2016-01-25T18:42:50.670 回答