【问题标题】:Git Incorrect SSH Key (Pushing to Heroku)Git 不正确的 SSH 密钥(推送到 Heroku)
【发布时间】:2013-10-12 03:18:58
【问题描述】:

我一直在尝试在 Heroku 上克隆一个项目。

我已经检查过我的密钥 (id_rsa.pub) 已通过 heroku keys:add 添加到 Heroku,并且它在 heroku keys:status 下正确显示

但是,当我执行git clone 时,我得到Permission denied (public key)。这让我相信我的 ssh 设置不正确。请注意,我正在使用 Ubuntu 机器。

为了进一步调试,我尝试克隆一个 github 存储库。这证实了我的信念,在使用 https 而不是 ssh 时有效(同样的错误)。

我的问题:

我如何确定 git 尝试使用哪个私钥来执行克隆操作。

此外,我尝试将config 文件添加到我的.ssh 文件夹中,其中包含以下内容:

Host heroku.com
Hostname heroku.com
IdentityFile ~/.ssh/id_rsa

【问题讨论】:

  • Ubuntu 默认使用id_rsa。指纹匹配吗? id_rsa 是您唯一拥有的密钥,还是您也有 id_dsa

标签: git heroku ssh


【解决方案1】:

请注意,如果您使用的是 ssh 配置文件,您应该:

  • 不像主机名那样命名它(例如主机heroku就足够了)
  • 添加用户 (git)

配置规范背后的想法是:

  • manage multiple heroku accounts,
  • 还要有更短的 ssh url。
    (真的不需要在每个 ssh url 前面重复git@...:用户在这里总是'git')。

你的配置文件应该是:

Host heroku
Hostname heroku.com
User git
IdentityFile ~/.ssh/id_rsa

你的 ssh url 应该是:

ssh://heroku:appname.git

【讨论】:

    猜你喜欢
    • 2013-06-22
    • 1970-01-01
    • 2012-11-11
    • 1970-01-01
    • 2014-05-14
    • 2021-03-05
    • 1970-01-01
    • 2014-07-08
    • 2013-09-05
    相关资源
    最近更新 更多