Ответ 1
Простите за поздний ответ, но я исправил свою проблему два месяца назад. (Просто не отметили вопрос как ответ. /Noob )
Отпечаток SSH не авторизовался на Heroku после восстановления git
Я выполнил:
$ heroku login
Но когда я пытаюсь нажать, меня все еще спрашивают об аутентификации:
$ git push heroku master
Username for 'https://git.heroku.com': <email>
Password for 'https://<email>@git.heroku.com':
Затем я получаю ПРЕДУПРЕЖДЕНИЕ: не аутентифицируйтесь с именем пользователя и паролем, используя Git.
Я снова запустил идентификатор героя и успешно прошел аутентификацию, но я все равно получаю тот же самый отказ.
Я проверил пульт:
$ git remote -v
heroku https://[email protected]/appname.git (fetch)
heroku https://[email protected]/appname.git (push)
Я также сгенерировал новый открытый ключ, передал его в Heroku и подтвердил его: https://devcenter.heroku.com/articles/keys
Я нахожусь в Windows 8 с Git 1.9.5.
Простите за поздний ответ, но я исправил свою проблему два месяца назад. (Просто не отметили вопрос как ответ. /Noob )
Отпечаток SSH не авторизовался на Heroku после восстановления git
Я обошел это, войдя в систему со следующим:
имя пользователя: пусто
пароль: токен героя auth
где токен аутентификации можно получить с помощью $ heroku auth:token
У меня была та же проблема (git не удалось аутентифицировать). Случается, что GIT хочет прочитать данные auth из файла% HOME%/_ netrc, а в Windows у вас нет этой переменной (только% USERPROFILE% и% HOMEDRIVE% +% HOMEPATH%)
i установите HOME в% USERPROFILE% (место, где сохранен файл _netrc, сохраненный героем) и GIT начал работать
Сначала найдите файл _netrc
, созданный heroku. В окнах его можно найти в C:\Users\User Name\_netrc
.
Этот файл содержит учетные данные для git.heroku.com
machine git.heroku.com
login [email protected]
password xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Используйте этот логин и пароль, когда запрашиваете аутентификацию после команды $ git push heroku master
Введите следующие команды:
# Enable SSH authentication
$ heroku create --ssh-git
# Redirect tall HTTPS calls to SSH
$ git config --global url.ssh://[email protected]/.insteadOf https://git.heroku.com/
Имя пользователя: адрес электронной почты, который вы использовали для регистрации в Heroku
Пароль: ключ API, предоставляемый Heroku в настройках вашей учетной записи на веб-сайте Heroku.
Это сработало для меня
У меня точно такая же проблема. Причина в моем случае, я случайно использовал оконную консоль вместо Git bash
Переименование файла
_netrc
на.netrc
в Windows 7 в userdir для меня работало.
.. после попытки всех шагов во многих других учебниках.
Запустите 3-ю команду в cmd в userdir или в целом комбо:
setx HOME %USERPROFILE%
cd %HOME%
REN _netrc .netrc
Это происходит потому, что git и heroku не используют один и тот же файл _netrc
. Это то, что я пытаюсь исправить, но вы можете помочь мне найти, где должен быть ваш файл _netrc
и где CLI его помещает.
Ниже приводятся потенциальные источники, в которых может быть файл _netrc
:
> echo %HOME%
> echo %HOMEDRIVE%%HOMEPATH%
> echo %USERPROFILE%
Вы можете попытаться добавить файл _netrc
в один из них, чтобы найти тот, который соответствует. Дайте мне знать, у которого есть файл _netrc
, и где вы можете его поместить, и git забрать его, не спрашивая у вас имя пользователя/пароль.
Также проверьте .gitconfig
, чтобы увидеть, есть ли какие-либо помощники учетных данных git, которые могут вызывать проблемы.
Эта тема старая, я знаю.
Однако ни одно из предыдущих решений не помогло мне.
Моя проблема заключалась в том, что "Учетные данные Windows" (ОС: Windows 10) имели другие учетные данные, ранее связанные с Heroku (учетная запись компании), и использовали их вместо новой (моя личная учетная запись).
Мне нужно было зайти: "Панель управления\Все элементы панели управления\Диспетчер учетных данных" (из панели управления) и изменить все учетные данные: https://git.heroku.com (и все те, которые связаны со словом "heroku") с текущим счетом.
Однако по паролю я разместил Key API, который отображается в "Личном кабинете" сайта и команда работает: git push heroku master.
7 часов, которые жизнь не вернет мне. :/
Мои 2 цента.
Если кто-то все еще борется с этим, этот ответ мне очень помог Использовать ключ API Heroku.
Во-первых, как @Raziza O упоминается в комментарии, чтобы получить ключ API heroku
https://dashboard.heroku.com/account , Сверните экран и нажмите кнопку открытия.
Тогда просто беги
git push https://heroku:[email protected]/$HEROKU_APP_NAME.git HEAD:master
Что я сделал, было открыто git bash вместо командной строки и введите "git push heroku master". Он работал: D
Я исправил это, изменив http-адрес на ssh://[email protected]/...
Если кто-то еще пытается решить эту проблему на cygwin: http://www.railszilla.com/git-push-heroku-master-authentication/start переписывание на SSH-транспорт помогло:
git config --global url.ssh://[email protected]/.insteadOf https://git.heroku.com/
Вы, вероятно, вошли в heroku
в двух терминалах, и если вы попытаетесь запустить команду на первом терминале, она сообщит об этой ошибке, поскольку во втором терминале была сделана новая аутентификация.
Или войдите в систему снова с помощью heroku login
и запустите команды в этом терминале или запустите команды в этом втором окне (если вы все еще открываете).
У меня была такая же проблема в Windows, и она была отсортирована только с помощью PSW, доступного в файле on _netrc, который можно найти в C:\Users\User Name_netrc.
Я надеюсь, что это может помочь.