我正在使用迁移来管理开发中的数据库更改并将其应用于生产。
但是,一旦我在生产中运行迁移,我会删除它们,因为正在运行php artisan migrate:refresh
可能会轻易消除大量有用的生产数据。
我想知道我正在做的事情是人们通常做的事情,还是我应该以不同的方式管理开发人员的生产工作流程。这是什么最佳做法?
答案 0 :(得分:0)
从Laravel 4.2开始,当您在生产中运行php artisan migrate
时,它会向您发出明确警告,表明您正在生产服务器上运行,并在控制台中提示您are you sure?
。这样就可以小心,只能正确运行migrate命令。
另一种选择是使用像Laravel Forge或Laravel Envoy这样的东西,它们有部署脚本,因此它会自动执行类似
的操作php artisan down
git pull
composer install
php artisan migrate
composer dump
php artisan optimize
php artisan up
这样工作流程始终是正确的。