所以我正在尝试将我的应用程序部署到heroku但是每当我推动掌握它时它会一直给我这个错误:
! Your key with fingerprint cb:e1:5c:31:cd:6b:78:6e:30:ff:eb:11:e2:4b:2e:b3 is not authorized to access smooth-mountain-8970.
我尝试了从生成新的ssh密钥到删除所有内容和替换文件的所有内容。我甚至创建了一个不同的用户名并尝试上传,但它一直给我这个错误,以为我想上传到平滑山,实际上,我的应用名称不是平滑山。你们知道问题可能是什么吗?
感谢。
答案 0 :(得分:27)
ssh-agent
(保存用于公钥认证的私钥的程序)自Mac OS X Leopard以来自动运行。要解决您的问题,您必须通过发出以下命令从代理中删除身份。
ssh-add -d
示例:
> ssh-add -l
1024 a3:d5:21:2d:50:ee:3e:af:1b:44:62:60:1d:e4:51:21 /Users/bart/.ssh/id_dsa (DSA)
> ssh-add -d
Identity removed: /Users/bart/.ssh/id_dsa (/Users/bart/.ssh/id_dsa.pub)
> ssh-add -l
The agent has no identities.
这只会临时删除此会话中的密钥。就个人而言,我不介意偶尔这样做。但是,如果您想永久禁用ssh-agent,请参阅:SSH Key Disable Caching
答案 1 :(得分:4)
在Heroku.com上重命名我的应用后,我遇到了问题:
! Your key with fingerprint xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx is not authorized to access smooth-rain-5917.
fatal: The remote end hung up unexpectedly
我几乎尝试了一切......正如@Nosayr Yassin所说的那样......
我没有任何 .config 文件,但我在
找到了错误的引用 my_app_root_dir/.git/config
它包含
[remote "heroku"]
url = git@heroku.com:smooth-rain-5917.git
fetch = +refs/heads/*:refs/remotes/heroku/*
我换了:
[remote "heroku"]
url = git@heroku.com:my_new_app_name.git
fetch = +refs/heads/*:refs/remotes/heroku/*
然后,运行agian
git push heroku master
就是这样,我终于可以再次重新部署我的应用程序......
获取所有提示:P
RGDS iVieL
编辑:顺便说一句,我在OSX Lion上运行:)
答案 2 :(得分:2)
就我而言,
heroku keys
向我展示了我的正确钥匙,但我仍然无法推送给Heroku。
这对我有用:
ssh-add -d
heroku keys:add ~/.ssh/id_rsa_heroku.pub
也就是说,它昨天对我有用,但今天......它没有。
这是今天的工作,感谢我的Unix主人老板的帮助:
ssh-add ~/.ssh/id_rsa*
cd ~/.ssh
ls -l
chmod 600 id_rsa*
chmod 644 *.pub
ls -l
ssh-add id_rsa
ssh-add id_rsa_heroku
cd -
答案 3 :(得分:1)
只需输入本地shell
即可解决此类问题heroku accounts:set accountname
其中 accountname 是包含Heroku应用程序的帐户的名称。之后 git push heroku master 正常工作。没必要做任何其他事情。
看起来很多人遇到了多个帐户的问题,所以我想我会分享这个。我自己管理多个帐户(在一台机器上),每个帐户都部署了多个应用程序。我已经为Heroku CLI安装了heroku-accounts插件。 (https://github.com/ddollar/heroku-accounts)
答案 4 :(得分:1)
我通过Heroku Devcenter找到了一个更简单的解决方案。以下是我为使其正常工作所做的工作。
ssh-keygen -t rsa
它将生成公共/私有rsa密钥对。如果你已经有一个,那么传递n为no。
heroku键:添加
它将找到现有的公钥并上传SSH公钥。
就是这样。就这么简单。