在Dreamhost中从SSH执行'git pull'到没有密码的GitHub

时间:2013-08-29 00:47:07

标签: git github ssh ssh-keys dreamhost

我在使用git命令(例如git pull)时遇到困难,而不必使用GitHub输入用户名和密码。

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

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

我做了以下事情:

  1. 使用PuTTy SSH连接到Dreamhost共享服务器

  2. 做了以下事情:

  3. $ 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. git pull,它仍然要求我输入GitHub凭据
    4. 我在使用SSH密钥时遇到了什么问题?我没有正确生成它们吗?我没有正确地将它们添加到GitHub吗?

      请帮忙。

1 个答案:

答案 0 :(得分:9)

尝试git remote -v

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

您可以使用ssh

切换到git remote set-url origin git@github.com:username/repo.git协议

this questionGithub

中有更多信息