软件开发架构师

windows下github 出现Permission denied (publickey).解决方法

问题 67 2019-02-25 15:13

 

今天在学习github的时候遇到了一些问题,然后爬了一会,找到了解决方法记录下来,以防忘记,当然能帮助别人最好啦!

github教科书传送门:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

再学习到"添加远程仓库"的时候遇到了 Permission denied (publickey) 这个问题,

总结来说以前的步骤如下所示:

1、git config --global user.name "usernme"

2、git config --global user.email "emailName"

3、git bash 进入工程目录:git init

4、使用git add filename 将文件添加到库

5、使用git commit -m "first commit" 进行提交

6、本地与仓库进行配对 git remote add origin git@github.com:eoooxy/git_test.git

7、把本地的内容推送到仓库中 git push  -u origin master

8、然后下一步理想的状态是提交到了远程仓库了,但是这边他就报错了: 

这样一来我就尴尬了。然后百度了下 解决方法是,先生成一个key,命令是: ssh-keygen -t rsa,然后有下面的提示

第一个红线的框应该是让你把输入保存的名字,第二篮框子就是输入密码,空就上没有密码(英语是体育老师教的,好伤心啊!)

然后 下面就是一系列 不知名的东西。。。文件是生成在当前的路径的 

然后 cat windows.pub 之后会有一串数字

复制 public key (windows.pub中的一串数字) 到你账户的 list of SSH keys, 再重新push.

到这我是没有成功的 然后网上又查了下,说用下面的命令来测试下:

$ ssh -v git@github.com

然后我就发现了

他在找公钥的时候都在我的c盘下面找的而且名字为 id_XXX,而我生成的空间是在d盘,之后我就把window改名id_rsa就,然后再次测试 ,结果为下

反正我看不懂没有报 Permission denied (publickey) 错误就对了。。。

然后在push代到仓库中就OK了

 

补充 2017-5-4

如果提交的时候出现:

 

那么:参考:https://segmentfault.com/q/1010000002736986/a-1020000002737032

是不是在不同的机器上上做了提交??

远程分支上存在本地分支中不存在的提交,往往是多人协作开发过程中遇到的问题,可以先fetchmerge,也就是pull,把远程分支上的提交合并到本地分支之后再push

如果你确定远程分支上那些提交都不需要了,那么直接git push origin master -f,强行让本地分支覆盖远程分支。。。

 

以上就是解决方法!

感谢:http://blog.csdn.net/xzz_hust/article/details/8969090

文章评论