我试图找出为什么我的heroku部署与我当地的Rails4 repo不同。特别是,我的一些迁移不会被复制,这会在我远程运行应用程序时造成各种麻烦。
以下是我的所有迁移(我从本地应用的根目录运行命令):
ls db/migrate/
20160402152001_create_users.rb 20160403231740_add_many_fields_to_record.rb
20160402214410_create_records.rb 20160403233848_rename_release_field_in_record.rb
20160402214520_add_attachment_file_upload_to_records.rb 20160407172018_create_contact_forms.rb
20160403000621_change_cas_user_id_to_user_name_in_records.rb
但是当我运行以下命令时,我发现并非所有迁移都出现在heroku上:
git config --list | grep heroku
remote.heroku.url=https://git.heroku.com/voices-dev.git
remote.heroku.fetch=+refs/heads/*:refs/remotes/heroku/*
branch.master.remote=https://git.heroku.com/voices-dev.git
# make some local changes
touch a
git add .
git commit -m "add dummy file"
# push changes and check the contents of db/migrate on remote host
git push -uf https://git.heroku.com/voices-dev.git master
heroku run bash
ls db/migrate
20160402152001_create_users.rb 20160402214410_create_records.rb 20160402214520_add_attachment_file_upload_to_records.rb
其他人是否知道可能导致某些本地文件无法在heroku上显示的内容?我很感激别人能提供的任何帮助!
答案 0 :(得分:0)
好悲伤,我已将db/
添加到我的gitignore。我会把它留在这里,以防其他人最终也疯了。
答案 1 :(得分:0)
您的本地数据库与您的heroku数据库不同。您必须运行heroku run rake db:migrate才能使它们匹配。