首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel 4删除迁移

Laravel 4删除迁移
EN

Stack Overflow用户
提问于 2017-10-13 06:41:09
回答 2查看 68关注 0票数 0

我删除了2个迁移文件,提交并推送了更改。现在,当我尝试运行artisan migrate命令时,会得到一个错误:

代码语言:javascript
复制
[InvalidArgumentException]
There are no commands defined in the "xyz" namespace.

我也不能做artisan migration:rollback,因为我得到了一个错误

代码语言:javascript
复制
{"error":{"type":"Symfony\\Component\\Debug\\Exception\\FatalThrowableError","message":"Class 'ClassNameXYZ' not found","file":"....vendor\/laravel\/framework\/src\/Illuminate\/Database\/Migrations\/Migrator.php","line":301}}

所以现在我试着运行composer dump-autoload和所有关于清除缓存的artisan命令,但是当我尝试迁移时,我得到了同样的东西。

我不能删除数据库,因为这将需要在生产分支上合并,所以如果我这样离开它,删除并重新分配数据库,它就会在生产服务器上崩溃。

我尝试手动添加已删除的迁移,然后添加composer dump-autoload,但是当我试图回滚时仍然会遇到相同的错误。

我还想从以前的提交中取回已删除的迁移,并执行了以下操作:

代码语言:javascript
复制
git checkout __COMMIT__ __FILENAME__

但我有两个错误,要么:

代码语言:javascript
复制
error: pathspec '__FILENAME__' did not match any file(s) known to git.

或者:

代码语言:javascript
复制
fatal: __FILENAME__: '__FILENAME__' is outside repository

我怎么才能解决这个问题?

编辑

我曾想过要做一个git reset,但不幸的是,所讨论的提交是在前一次提交。最后一次提交是不再存在的分支的合并,因此如果我重置它,我将丢失与最后一个分支合并的更改。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-10-13 07:04:18

我发现了一个错误。这是由于迁移调用了一个自定义artisan命令,它的名称与我上次提交更改时的名称不同。

我仍然不知道为什么会发生git问题,但现在它并不重要。

票数 0
EN

Stack Overflow用户

发布于 2017-10-13 06:48:45

我认为你应该遵循以下的评论:

如果删除迁移类文件(xyz),只需从迁移表中删除记录即可。在运行命令php artisan migrate之后。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46723914

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档