2011-09-05 135 views
8

(在Mac上) 我试图从我的新电脑克隆我的项目。我第一次产生了SSH密钥对:git克隆Heroku项目失败

heroku keys:add /Users/y/.ssh/heroku_rsa.pub 

heroku keys显示:

ssh-rsa AAAAB3NzaC...B9DjpXg3fb [email protected] 

当我试图通过git clone [email protected]:xyz.git

Cloning into xyz... 
Warning: Permanently added the RSA host key for IP address '50.19.85.132' to the list of known hosts. 
Permission denied (publickey). 
fatal: The remote end hung up unexpectedly 

这是奇怪的克隆我的项目。

编辑:如果我不重命名我的酒吧密钥文件,然后它的作品。不知何故,heroku不喜欢重命名我的钥匙..换句话说,使用名称为deault id_rsa.pub

+0

你有'%HOME%'定义为'C:/用户/ y'? (你有没有定义'%HOME%'?) – VonC

+0

你是否在你的'〜/ .ssh/authorized_keys'(或者你的SSH服务器寻找它的地方)添加了私钥。它不是,SSH服务器将不知道如何执行私钥身份验证。 –

+0

我没有authorized_keys文件。我从来没有写过这样的文件在我以前的机器上。 – Morrowless

回答

9

它看起来像你的钥匙没有加载。只有默认加载的默认命名键(id_rsa)。使用ssh-add命令载入heroku密钥:

ssh-add ~/.ssh/heroku_rsa 
+0

解释它! – Morrowless

15

我有类似的问题。起初,我没有一个名为id_rsa.pub的密钥。我只有一个关键的github:github_rsa.pub。我跑了heroku keys,看到它确实认出我有钥匙。但显然heroku不喜欢那个github关键。这是我做的:

$ssh-keygen -t rsa 
$heroku keys:clear 
$heroku keys:add 
$git clone [email protected]:my-app.git -o heroku 

这就成功地下载了项目的所有文件。

+0

猜猜看......它在这之后一直告诉我.. 克隆成'strong-spring-610-218'... !没有像spring-610-218这样的应用程序。 致命:远端意外挂断 – Master345

+0

如果你已经有了密钥,你不必这样做:$ ssh-keygen -t rsa所以跳过那一步;从$ heroku键开始:清除;然后$ heroku键:添加,它会提示您的密钥列表添加;不要选择一个github - 在我的情况下,我选择了:id_rsa.pub;然后运行最后一行克隆我的应用程序 - 都谢谢gstroup! – headwinds

+1

如此真棒,heroku键:清除然后键:添加正是我需要的,谢谢! – FireDragon

1
heroku git:clone -a "your_project_name_on_heroku" 

这个简单的命令工作正常(前提是你的ssh密钥正确之前加入)