4

我无法通过 SSH 输入 git 命令(例如 git pull)而无需在 GitHub 上输入用户名和密码。

我可以通过 SSH 连接到我的 Dreamhost 服务器并手动运行git pull. 然后我必须输入我的 GitHub 用户名和密码。这很好而且很花哨,但我想运行git pull 不必每次都输入我的 GitHub 凭据。

发现我需要添加 SSH 密钥,但服务器仍然要求提供 GitHub 凭据。

我做了以下事情:

  1. 使用 PuTTy SSH 进入 Dreamhost 共享服务器

  2. 做了以下事情:

$ ssh-keygen -t rsa

Generating public/private rsa key pair.

Enter file in which to save the key (/home/funkyserver/.ssh/id_rsa):

Enter passphrase (empty for no passphrase):   <-- I left this empty

Enter same passphrase again:   <-- I left this empty

Your identification has been saved in /home/funkyserver/.ssh/id_rsa.

Your public key has been saved in /home/funkyserver/.ssh/id_rsa.pub.

The key fingerprint is:

12:c3:12d:88:01:pp:12:b5:ca:33:8g:1q:64:ce:4a:81 funkyserver@wonkyninja  <-- wonkyninja is Dreamhost's server name and this fingerprint is fake

The key's randomart image is:  <-- I left this part out on purpose
  1. 复制 /.ssh/id_rsa.pub 密钥并将其添加到“部署密钥”部分@GitHub.com
  2. 回到 Dreamhost 服务器,我使用 git repo SSH 进入目录(例如 /home/funkyserver/mysite)
  3. Ran git pull,它仍然要求我输入 GitHub 凭据

我对 SSH 密钥做错了什么?我没有正确生成它们吗?我没有正确地将它们添加到 GitHub 吗?

请帮忙。

4

1 回答 1

9

尝试做git remote -v

如果您的遥控器以密码为前缀,https://则会被询问。

您可以使用以下命令切换到ssh协议git remote set-url origin git@github.com:username/repo.git

这个问题Github上有更多信息

于 2013-08-29T00:52:11.960 回答