您的位置:首页 > 编程语言

github配置及git push时报“Permission denied”的解决方法

2015-08-30 19:59 274 查看
今天第一次用git版本管理工具和传说中的github,安装过程遇到的问题及解决办法记录下来。
首先在windows环境下安装了git,官网下载较慢,个人从csdn上下载http://download.csdn.net/download/u011620614/7522797,按照普通程序安装方法安装;git及github设置方式和svn类似,相关资料比较齐全,建议参考百度经验http://jingyan.baidu.com/article/bea41d437e4fbab4c51be6cf.html中步骤。但是,最后将master分支push到gitbub仓库时,问题出现了,线下的git代码没有权限push到线上,报“Permission
denied ”错误,后来经过查询,原因是线下git的ssh key没有在线上注册,经过在线下生成ssh key,随后在github控制台注册,问题得到解决。具体方法是:
1)首先,本地git shell中键入

ls -al ~/.ssh

查看是否有d_rsa.pub 和id_rsa这两个文件,如果没有,执行步骤2),如果有执行跳过2)直接执行步骤3)

2)生成ssh key文件,键入

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"


其中邮箱地址是你在github验证过的邮箱地址。之后一路回车(如果你不需要设置密码的话),ls就可以看到d_rsa.pub 和id_rsa这两个文件

3)确认ssh key是否有效,键入

ssh-agent -s


如果正确显示你的pid,则说明ssh key文件生成正确

4)复制ssh key公有文件,键入

clip < ~/.ssh/id_rsa.pub


5)在github setting中新建ssh key,将刚才复制的ssh key粘贴到key区域中,记住起一个title

至此,github上完成了对这台主机的授权,gitpush -u origin master正确执行, 以后push时就不必进行同样的操作了。

本人的第一篇csdn博客,错误之处,欢迎指出斧正。

参考资料

https://help.github.com/articles/generating-ssh-keys/
http://stackoverflow.com/questions/3617113/github-permission-denied-publickey-fatal-the-remote-end-hung-up-unexpectedl
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息