问题描述
首先呢,我已经弄好了ssh的密钥,ssh -T git@githun.com是可以的,返回:Hi xxxxxx! You’ve successfully authenticated, but GitHub does not provide shell access.但是,当我想要git push的时候,总是失败,提示是:Permission denied (publickey).fatal: Could not read from remote repository.
Please make sure you have the correct access rightsand the repository exists.FATAL Something’s wrong. Maybe you can find the solution here: xxxxxxxxxxxx请问这是什么情况,
我执行的是git remote add origin git@github.com:xxxxxxx/test.gitgit push -u origin master
问题解答
回答1:设置Git的user name和email
git config --global user.name 'yourname'git config --global user.email 'youremail'
生成SSH密钥
查看是否已经有了ssh密钥:cd ~/.ssh如果没有密钥则不会有此文件夹,有则备份删除生存密钥:ssh-keygen -t rsa -C “haiyan.xu.vip@gmail.com”按3个回车,密码为空。Your identification has been saved in /home/tekkub/.ssh/id_rsa.Your public key has been saved in /home/tekkub/.ssh/id_rsa.pub.The key fingerprint is:………………最后得到了两个文件:id_rsa和id_rsa.pub
添加密钥到ssh:ssh-add 文件名,需要之前输入密码.
在github上添加ssh密钥,这要添加的是“id_rsa.pub”里面的公钥。打开https://github.com/,在设置中添加密钥
测试:ssh git@github.comThe authenticity of host ‘github.com (207.97.227.239)’ can’t be established.RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added ‘github.com,207.97.227.239′ (RSA) to the list of known hosts.ERROR: Hi tekkub! You’ve successfully authenticated, but GitHub does not provide shell accessConnection to github.com closed.测试成功就可以push code了.