2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

間違ったマイグレーションファイルを削除する方法

Last updated at Posted at 2020-12-23

オンラインスクールの課題に取り組んでいる時に、間違って、余計なマイグレーションを行ってしまいました。
せっかく上手く動作していたのに、そのマイグレーションをきっかけにエラーが頻発。パニック。
rollbackを行おうとしたのですが、上手くできなかったため、今回は削除することにしました。

まずはマイグレーションの状態を調べる

rails db:migrate:statusで現在のマイグレーションの状態を調べます。
その結果、このように返ってきました。

Status   Migration ID    Migration Name
--------------------------------------------------
   up     20201222113451  Devise create users
   up     20201223005506  Create items
   up     20201223093320  Add nickname to users
  down    20201223095940  Add devise to users

一番下のファイルが余計に追加してしまったデータベースです。downになってますね。

マイグレーションを削除!

rm -rf db/migrate/20201223095940_add_devise_to_users.rb

そして、rails db:migrateを行い、再びrails db:migrate:statusを実行。

きれいに削除されました

 Status   Migration ID    Migration Name
--------------------------------------------------
   up     20201222113451  Devise create users
   up     20201223005506  Create items
   up     20201223093320  Add nickname to users

きれいに最後のマイグレーションが削除され、無事に動作確認をすることができました。

まとめ

今回と問題になったパターンは違うと思いますが、rollbackを使って、マイグレーション問題を解決した方法を書きました。

今回は削除して対応してみました。
まだ上手く頭の中でマイグレーションについて理解できていませんが、少しずつ深めていきたいと思います。
先人の経験に感謝です!

参考

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?