Подтвердить что ты не робот

Heroku open - не указано приложение

Я только что создал простое приложение Rails, используя

rails new myapp

затем создал стек героя, используя:

heroku create --stack cedar 

Но когда я пытаюсь открыть приложение на Heroku, используя:

heroku open

Я получаю:

 !    No app specified.
 !    Run this command from an app folder or specify which app to use with --app <app name>

И это:

$ heroku open --app myapp

дает мне следующее:

 !    App not found

Я пропустил что-то очевидное?

4b9b3361

Ответ 1

Если у вас есть существующее приложение на Heroku, и вы получаете это сообщение о не указанном приложении, вы можете исправить его, выполнив его на своем локальном терминале:

heroku git:remote -a MyHerokuAppName

Ответ 2

Heroku по умолчанию не создает приложение с именем вашего каталога, поэтому, когда вы делаете

heroku create --stack cedar
Creating calm-bayou-3229... done, stack is cedar
http://calm-bayou-3229.herokuapp.com/ | [email protected]:calm-bayou-3229.git

создается приложение с именем "quiet-bayou-3229" И вы можете сделать

heroku open --app calm-bayou-3229
Opening http://calm-bayou-3229.herokuapp.com/

Вы всегда можете перечислить свои приложения:

heroku apps

Ответ 3

Другим подходом к решению проблемы является понимание того, что делает файл .git/config, связанный с приложением heroku, и внесение необходимых настроек.

1.Откройте .git/config из вашего корня проекта heroku.

Ваш конфигурационный файл git может выглядеть примерно так, особенно если вы жонглируете паролями герою на своей машине.

[email protected]{heroku.account} отображается вместо [email protected] из-за конфигурации в вашем файле ~/.ssh/config. Ссылка на heroku-app-8396.git должна быть обновлена ​​в соответствии с вашим именем проекта heroku. У каждой учетной записи heroku у вас должна быть запись в файле ~/.ssh/config. Очевидно, что учетная запись heroku, с которой связан этот проект heroku, должна отображаться в вашем файле .git/config.

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
    ignorecase = true
    precomposeunicode = false
[remote "origin"]
    fetch = +refs/heads/*:refs/remotes/origin/*
    url = [email protected]:heroku-app-8396.git
[remote "heroku"]
    fetch = +refs/heads/*:refs/remotes/heroku/*
    url = [email protected]:heroku-app-8396.git
[branch "master"]
    remote = origin
    merge = refs/heads/master
[heroku]
  account = heroku.account

2. Когда я запускаю git pull heroku master, все, кажется, работает хорошо.

3. Когда я запустил heroku logs, я получаю сообщение об ошибке:

$ heroku ps
!    No app specified.
!    Run this command from an app folder or specify which app to use with --app APP.

Почему?

Насколько я могу судить, команда heroku, похоже, не знает, что делать с ссылками {heroku.account}. Если мы изменим эти ссылки на com (который является значением по умолчанию, когда вы не используете плагин herocu 'account'), команды heroku работают еще раз, но теперь наши вызовы git говорят, что есть другое проблема:

$ git pull heroku master

 !  Your key with fingerprint d6:1b:4c:48:8c:52:d4:d6:f8:32:aa:1a:e7:0e:a2:a1 is not authorized to access smooth-robot-8396.

fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Один из способов решения этой проблемы - определить пульт для git и пульта дистанционного управления для heroku, а затем сообщить heroku, какой удаленный доступ использовать.

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
    ignorecase = true
    precomposeunicode = false
[remote "origin"]
    fetch = +refs/heads/*:refs/remotes/origin/*
    url = [email protected]:heroku-app-8396.git
[remote "heroku"]
    fetch = +refs/heads/*:refs/remotes/heroku/*
    url = [email protected]:heroku-app-8396.git
[remote "heroku-app"]
    fetch = +refs/heads/*:refs/remotes/heroku/*
    url = [email protected]:heroku-app-8396.git
[branch "master"]
    remote = origin
    merge = refs/heads/master
[heroku]
    remote = heroku-app
    account = heroku.account

Мне нравится явно указывать удаленное приложение, когда я нажимаю содержимое на удаленный компьютер, поэтому для него используется heroku remote, хотя эта конфигурация также поддерживает нажатие/вытягивание с использованием значения по умолчанию (например, git push). Я создаю новое удаленное "heroku-app" и добавляю remote = heroku-app, чтобы сообщить heroku использовать удаленный сервер, который не включает учетную запись heroku в URI.

Теперь я могу запускать команды git и heroku, как я хочу.

Ответ 4

У меня была такая же проблема. Все, что мне нужно было сделать, это cd для создания dir вместо запуска команд из папки модели в каталоге проекта.

Ответ 5

Эта сумасшедшая вещь работала для меня:

Если у вас есть приложение git repo copy на вашем локальном компьютере, то cd в это место и , что он!!

Вы сможете использовать приложение. Вы можете проверить это командой: heroku logs -n 1500