git clone 解决Permission Denied (publickey)问题

原文地址:http://www.noobyard.com/article/p-qhisbqak-eu.htmlgit

本地git bash 使用git clone git@github.com:***.git方式下载github代码至本地时须要依赖ssh key,遇到权限不足问题时通常都是SSH key失效或者SSH key不存在,从新建立SSH key通常就能够解决问题;github

步骤1、检查本地ssh key是否存在windows

    一、windows下 开始 -- 搜索框输入 git bash,打开git bash窗口;bash

    二、git base窗口中输入指令 ls ~/.ssh/ 来检查ssh key是否存在;ssh

    三、若是key不存在则按照步骤二从新生成,ssh key已存在则跳过步骤二,执行步骤三;ide

步骤2、生成ssh key.net

    一、继续步骤一的git bash窗口执行指令:3d

            ssh-keygen -t rsa -b 2048 -C "你本身的邮箱地址"blog

           修改邮箱地址为你本身的邮箱地址,注意此处邮箱地址先后的双引号为英文格式双引号;get

    二、指令执行后页面提示:

           

           Generating public/private rsa key pair.
           Enter file in which to save the key (/c/Users/***/.ssh/id_rsa):

         ***表示你本身的当前登陆用户名,不作修改直接回车,会将生成的rsa文件保存为默认名称

         再次回车提示:

         Enter passphrase (empty for no passphrase): 
         Enter same passphrase again: 
         提示设置提交/l拉取代码到Github时须要的密码及确认密码;

         设置密码后再次回车提示Your identification has been saved in.... 即表示ssh key生成成功;

步骤3、添加sshkey至ssh-agent

    一、执行eval “$(ssh-agent -s)”确认ssh-agent处于开启状态,打印pid... 表示启用中;

    二、执行指令ssh-add ~/.ssh/id_rsa 添加ssh key至ssh agent,此步会要求输入步骤二设置的密码;

          须要注意的是此处可能报错:Could not open a connection to your authentication agent,个人解决办法是关掉当前git                  bash窗口,从新以管理员身份运行git bash 即解决问题;

步骤4、添加ssh key至guthub

     一、登陆https://github.com/,在页面右上角本身头像右边箭头处右击,弹框中进入setting功能;

            

     二、setting界面右边菜单选择SSH and GPG keys,选择新建SSH keys,

    

保存便可;

步骤五:git clone下载代码

   步骤结束,此时再尝试本地使用git clone方式下载代码便可;