git Permanently added the RSA host key for IP... [email protected]: Permission denied (publickey).问题解决

[针对已经使用过github的新手,完全从0开始的请移步]
本过程是在win7下使用git bash

今天重新开始使用git,发现不会用了,怎么也不能把本地的仓库push到远程的github库里面。试错过程如下with solution:

$ git push origin master
Warning: Permanently added the RSA host key for IP address '52.74.223.119' to the list of known hosts.
[email protected]: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

可以看到,应该是使用[email protected]命令时,被拒绝了,原因是publickey。即本地想要和github进行连接前需要建立一个ssh的连接,并且添加公钥,从而让github上的仓库能够信任确实是你本人在修改和使用这个仓库。

  1. 查看在本地的git仓库下,是否已经生成过.ssh文件。可以在bash里直接ls,也可以直接在win文件下查看。
  2. 查看这个目录下有没有id_rsa和id_rsa.pub这两个文件
  3. 如果已经有了,那么去github官网上登录github,点击右上角头像的下拉框,选中settings,选中左边的SSH and GPG keys,看一下ssh那里是否有已经有添加好的ssh,如果没有,点击右上角绿色的 New SSH Key,title只是一个标识符,可随意。key部分需要填写的要求在框框里可以看到。这个通过bash下执行命令可以得到,执行$ cat ~/.ssh/id_rsa.pub,会看到一大串东西,把这些内容毫无保留的粘贴复制到github上,开头应该是ssh-rsa,结尾是注册github的邮箱。
  4. 执行ping github.io看当前是否能ping通
  5. 执行ssh [email protected],输入github账户的密码(passphrase),看到Hi XXX! You've successfully authenticated 那么祝贺你,你离成功就差一点点了!
  6. 再次执行$ git push origin master 依然是刚开始的情况,纳尼!!难道前面的过程都是浮云吗,当然不是,这时候需要make sure you have the correct access rights
  7. 借鉴这位兄台的文章:git Could not open a connection to your authentication agent.添加一个git agent,然后把ssh添加进去。命令如下:ssh-agent bash --login -issh-add。输入password之后,出现Identity added之后就真的是成功啦~ 再次push一下试试吧~
    • http://www.cnblogs.com/cheche/archive/2011/01/07/1918825.html

你可能感兴趣的:(日常问题)