解决 Permission denied(publicKey) 问题

好几个月没碰过github Pages了,一整就来事儿,花了一下午才搞定。现把问题和解决方法记录下来,以做参考。在用gitgithub服务器push代码的时候,出现了一下情况:

1
 Pushing generated _deploy website Permission denied (publickey). fatal: Could not read from remote...

折腾了一下,终于定位到问题所在了,原因是之前在本地生成githubssh key失效了,导致github服务器验证提交请求失败,进而拒绝提交代码操作。好了,定位到问题所在就好办了,接下来就是初始化SSH key就行了。

右键—–>git bath,在控制台中输入:

1
  ssh-keygen

一路Enter,如果已存在id_rsa文件的话,会提示你是否将其覆盖,键入y即可,如图:

show info

找到id_rsa文件,这个文件目录随个人系统而定,我的是在/c/Users/fosenola/.ssh/下.找到一个叫id_rsa.pub的文件(特别注意,是id_rsa.pub),而后用文本编辑器(因为待会复制的时候不能复制到空格,否则会出现各种你不想见到的问题),如notepad++、UltraEdit等。接下来登入github网站,点击右上角Acount Settings—>SSH Keys —> Add SSH Key,如图:

show info

注意,上图中钥匙图标旁边的绿色小点表示该SSH Key状态为正在使用,灰色表示为使用或者已失效。可以用一下命令测试刚才加入的SSH Key是否成功:

1
ssh -T git@github.com

如果提示仍为“github,Permission denied(publicKey)”则表示ssh key设置失败,如果是“hello …,you’ve successfully…”那么,恭喜,成功了!并且可以再刚才设置的SSH Key界面上看到灰色小点便成了绿色。

show info

至此,就可以再试试git push命令了。当然以上只是自己在网上瞎找的方法,后来才知道自己太二了,这种东西官网才是王道。官网上不仅有windows,更有MACLinux下的解决方法。猛戳这里

思考了一番,总结了几点:

1. 遇到问题后不慌,先定位问题再找解决之法。   
2. 不轻易谷歌或者百度。   
3. 官方文档才是第一手资料。  
4. 所谓的大神就是啃多了第一手资料。  

文章评论

返回顶部