Heroku Permission denied (publickey)

Posted by wxianfeng Mon, 07 Mar 2011 18:57:00 GMT

今天 push project 到 heroku ,可是怎么都出现下面这个错误:

Permission denied (publickey).
fatal: The remote end hung up unexpectedly

不解,push 到github 就没有问题, 网上搜了下 说是 publickey 问题 , 可是看了 heroku 上 和本地的 就是一样的 。。

wxianfeng@ubuntu:/usr/local/system/projects/git/fucklinode$ heroku keys
=== 1 key for wang.fl1429@gmail.com
ssh-dss AAAAB3NzaC...ZALatGdA== wang.fl1429@gmail.com

本地的

~/.ssh/id_rsa.pub 也是这个key

如果发现不一样的 可以 添加一个新的 key

>heroku keys:add  ~/.ssh/id_rsa.pub

更多关于keys的命令可以

>heroku help

继续研究,后来发现 heroku 找的 不是 id_rsa.pub ,而是 id_dsa.pub ,通过 ssh -v git@heroku.com 查出

>ssh -v git@heroku.com 
...
debug1: Trying private key: /home/wxianfeng/.ssh/id_dsa
...

好 , 那我就给你生成 dsa 加密的

>cd ~/.ssh
>rm -rf  *
>ssh-keygen -C "wang.fl1429@gmail.com" -t dsa   # rsa 加密的 -t rsa 即可

上传 key

>heroku keys:add ~/.ssh/id_dsa.pub

>git push heroku master 

就ok了

按照官方的教程 就应该是 id_rsa.pub , 之前也一直好好的,可是 今天 找的怎么是 id_dsa.pub 呢 , 如果你同样遇到这个问题,看看是不是 也是这里的问题 ….

SEE:
http://stackoverflow.com/questions/3481973/heroku-error-permission-denied-public-key
http://devcenter.heroku.com/articles/quickstart
http://help.github.com/troubleshooting-ssh/