Ruby on rails Rails rake db:在Heroku上回滚不工作。现在我可以';不要添加任何新的迁移

Ruby on rails Rails rake db:在Heroku上回滚不工作。现在我可以';不要添加任何新的迁移,ruby-on-rails,ruby,postgresql,heroku,Ruby On Rails,Ruby,Postgresql,Heroku,我有一个在本地运行良好的应用程序。有一次我尝试将Act安装为可标记的gem,它生成了一系列迁移文件。在我们投票反对使用该gem之后,现在我在本地回滚了—但是在部署到heroku之后,看起来有5个迁移文件上传到了heroku 然后我跑了 `heroku run rake db:migrate' 我现在收到这个错误 'uninitialized constant AddTaggingsCounterCacheToTags::ActsAsTaggableOn/app/db/migrate/20141

我有一个在本地运行良好的应用程序。有一次我尝试将Act安装为可标记的gem,它生成了一系列迁移文件。在我们投票反对使用该gem之后,现在我在本地回滚了—但是在部署到heroku之后,看起来有5个迁移文件上传到了heroku

然后我跑了

`heroku run rake db:migrate'
我现在收到这个错误

'uninitialized constant AddTaggingsCounterCacheToTags::ActsAsTaggableOn/app/db/migrate/20141107010718_add_taggings_counter_cache_to_tags.acts_as_taggable_on_engine.rb:6:in `up'
现在我不需要“AddTaggingsIntercacheToTags”,但我确实需要一个本应在此之后运行的迁移

关于如何将其从生产/heroku服务器中删除的任何提示?如何仅删除特定迁移并保留我进行的最新迁移

谢谢

好的,伙计们。我明白了

问题是,在本地删除文件后,它们仍然存在于git上。这个过程是删除导致错误的迁移,然后我可以让所有迁移顺利完成。命令在下面

   git rm [filename]
   git commit -a -m "removed the migrations causing the error from git too"
   git push origin master
   git push heroku master
   heroku run rake db:migrate
现在数据库中有一个空/不必要的表存在问题,但重要的是-我可以继续添加迁移,我的最新功能现在可以在生产环境中正常工作!
干杯

尝试使用
heroku运行rake db:schema:load
。但是要小心!它将删除服务器上的数据。我的站点上有100多个活动用户。这会影响我当前的数据吗?我只想删除与未使用的gem关联的表。是的,它将被删除。你可以跟着这个。基本上,您需要从模式中创建新的迁移,而不需要createtable语句中的
force:true
。使用这种方法,您的数据将得到安全保存—本教程非常好,但在我的生产服务器上运行rake db:schema:load将删除所有用户数据。使用这种方法,您不会运行
rake db:schema:load
。只是从模式创建新的迁移。在服务器中,您只需运行migration@piratetome您可以使用SQL客户机手动删除该表。