Приложение, нажатое на герою, по-прежнему показывает стандартную страницу индекса
Я прошел через шаги по установке git и героя gem и успешно нажал мое приложение на герою.
Проблема заключается в том, что она показывает стандартную страницу "You're Riding Ruby on Rails", хотя локальное приложение, которое у меня есть, имеет маршруты, установленные для root на определенный контроллер/страницу. Я также удалил страницу index.html из /public.
Любая идея, почему это происходит? Я подозреваю, что мне, возможно, нужно было перейти от разработки к развертыванию, но все же, я удалил index.html, почему он все еще появляется на герою?
EDIT: переход к mysite.heroku/login и другим страницам, которые я создал, по какой-то причине отлично работает, поэтому никогда не думайте о развертывании.
Ответы
Ответ 1
Когда вы используете git и удаляете файл, этот файл автоматически не удаляется из репозитория git. Поэтому, когда вы git push heroku
, файл все еще существует и попадает в Heroku.
Вы можете сказать, имеет ли это значение с git status
, который будет показывать что-то вроде:
# Changes not staged for commit:
# (use "git add/rm <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# deleted: public/index.html
Чтобы удалить файл, вам необходимо использовать git rm
. В этом случае вам нужно сделать что-то вроде:
git rm public/index.html
git commit -m "Removed public/index.html"
который удалит файл из текущей ветки.
Теперь, когда вы делаете
git push heroku
файл не будет включен, поэтому вы будете перенаправлены на контроллер, как указано в route.rb.
Ответ 2
Я всегда использую git commit -am "message". Это предотвратило вышеупомянутую проблему (что бы точно произошло), и я не знаю, почему не использовать -am.
EDIT: также обязательно используйте git add .
, когда у вас есть новые файлы для добавления.
Итак, мой процесс:
git status (to see what has changed)
git add . (if there are new files I want to add to repository)
git commit -am "This is the comment"
git push (to github)
git push heroku (--app app-name if there is more than one app connected to this repository)