Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
48
Help us understand the problem. What is going on with this article?
@TakaKun

migrationファイルの削除

More than 1 year has passed since last update.

状況

マイグレーションステータスにNO FILEが存在しているので、消したい。

$ bundle exec rake db:migrate:status

database: ***/development.sqlite3

 Status   Migration ID    Migration Name
--------------------------------------------------
   up     20150708134153  ********** NO FILE **********
  down    20150722185435  Devise create users
  down    20150722190233  Add columns to users

railsのrakeのmigrationファイルを削除しNO FILEとstatusに出た時の対処を参考に対応する。

マイグレーションファイルを復活させる

上記のstatusコマンドで確認したIDを元に、以下のファイルを作成する。

$ vim db/migrate/(migration_file_id)_tmp.rb
class Tmp < ActiveRecord::Migration
  def change
  end
end

statusコマンドを再確認し、NO FILEが消えていることを確認する。

$ bundle exec rake db:migrate:status

database: ***/development.sqlite3

 Status   Migration ID    Migration Name
--------------------------------------------------
   up     20150708134153  Tmp
  down    20150722185435  Devise create users
  down    20150722190233  Add columns to users

マイグレーションファイルをdown statusに変更する

downに変更

$ bundle exec rake db:migrate:down VERSION=(migration_file_id)

ステータスがdownになっていることを確認する

$ bundle exec rake db:migrate:status

database: ***/development.sqlite3

 Status   Migration ID    Migration Name
--------------------------------------------------
  down    20150708134153  Tmp
  down    20150722185435  Devise create users
  down    20150722190233  Add columns to users

マイグレーションファイルを削除する

削除

$ rm -rf db/migrate/20150708134153_tmp.rb 

ステータスを確認

$ bundle exec rake db:migrate:status

database: ***/development.sqlite3

 Status   Migration ID    Migration Name
--------------------------------------------------
  down    20150722185435  Devise create users
  down    20150722190233  Add columns to users

履歴が消えた!

48
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
TakaKun

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
48
Help us understand the problem. What is going on with this article?