#ruby-on-rails #git #heroku #heroku-toolbelt
#ruby-on-rails #git #heroku #heroku-toolbelt
Вопрос:
Я создал приложение rails с
$ rails new appname
$ cd appname
Я инициализировал его как репозиторий git
$ git init
$ git add .
$ git commit -m 'init'
Я вошел в heroku
$ heroku login
Email: correct@email.com
Password (typing will be hidden):
Я создал приложение heroku
$ heroku create
Creating radiant-bayou-6540... done, stack is cedar
http://radiant-bayou-6540.herokuapp.com/ | git@heroku.com:radiant-bayou-6540.git
Git remote heroku added
Я попытался нажать на heroku
$ git push heroku master
! Your account incorrect@email.com does not have access to radiant-bayou-6540.
Подождите, что? Я не входил в систему с incorrect@email.com Я вошел в систему с correct@email.com . Давайте посмотрим на git
$ git config user.email
correct@email.com
Что?! Почему heroku думает, что я вхожу с wrong@email.com
Ответ №1:
SSH-ключи вашей учетной записи привязаны к вашей старой электронной почте. Вам придется перенести его в свою новую учетную запись
$ heroku login
Enter your Heroku credentials.
Email: incorrect@email.com
Password:
$ heroku keys:remove incorrect@email.com
и добавьте его в свою новую учетную запись
$ heroku login
Enter your Heroku credentials.
Email: correct@email.com
Password:
$ heroku keys:add
В противном случае попробуйте создать заново и добавить новый ssh-ключ
Комментарии:
1. После этого я столкнулся с другой проблемой, которая оказалась необходимой
ssh-add ~/.ssh/my-new-key
, но теперь она работает.
Ответ №2:
Удаление записи known_hosts для ssh должно помочь. Для Linux и Mac он находится в каталоге $HOME /.ssh
Ответ №3:
В моем случае мне просто пришлось переключиться на использование ssh.
git config --global url.ssh://git@heroku.com/.insteadOf https://git.heroku.com/
Если используется heroku remote https
, git, похоже, извлекает учетные данные из другого места.