window界面下,github每次git push会出现permission denied (publickey)的解决
2017-03-09 18:40
531 查看
作为一个编程小白,软件小白。这几天在写毕业论文。打算把写的东西记录在gihub上,但是今年莫名的发现每次从当地向远端push的时候总是报错permission denied (publickey);结果花费了一个下午才解决。这也促使我写下自己痛苦的经历,以期能够帮助后来的和我一样小白的。
首先也是各种百度,然后知道原因:就是有https模式转到ssh模式时候这种问题就会出来了。网上大多数人也是出现这种问题。因为https模式下每次git push都要输入账号和密码是在是麻烦。
解决的方法是:因为我已经有了公钥,没有的话看git教程会有如何生成公钥的方法的。我的问题是:改自己的公钥(public key),我不知道为什么会出现公钥不对的问题。
查看是否已经有了
ssh
密钥:
cd ~/.ssh
如果没有密钥则不会有此文件夹,有则备份删除
生成密钥:
ssh-keygen -t rsa -C
“
xxxxx@gmail.com
”
1:查看是否已经有了ssh密钥:cd ~/.ssh 如果没有密钥则不会有此文件夹,有则备份删除(这个必须把这文件完全删掉)
备注:作为一个沉痛的教训就是我一直没有删掉这个文件,每次都是这么overwrite的生成key,结果每次都是白忙活
2:生成密钥: ssh-keygen -t rsa -C “xxxxx@gmail.com” ""里的是自己的邮箱,三次回车,密码为空
3:最后得到了两个文件:id_rsa和id_rsa.pub 添加密钥到ssh:进入你的github,需要之前输入密码. 在github上添加ssh密钥,这要添加的是“id_rsa.pub”里面的公钥。
4: 打开https://github.com/
最后得到了两个文件:
id_rsa
和
id_rsa.pub
添加密钥到
ssh
:进入你的
github,
需要之前输入密码
.
在
github
上添加
ssh
密钥,这要添加的是“
id_rsa.pub
”里面的公钥。
打开 https://github.com/ 在设置中添加密钥
把
id_rsa.pub
用记事本打开之后复制里面的到网站上就可以了。
在设置中添加密钥 把id_rsa.pub用记事本打开之后复制里面的到网站上就可以了。需要注意的是以前的ssh密钥要删除
5:之后在terminal输入:ssh git@github.com,这里需要注意的是,输入的就是这一句话,后面的不是自己的邮箱,最需要注意的是,如果是从一些别的地方copy的话,注意ssh后面只有一个空格,多一个都会出错的
6:
中间的是否确定继续连接,输入yes就ok
7:然后再次git push就可以了。
其实中间的所有过程在网上差不多都能download到,但是我还是费了好几个小时,主要就是一些小的细节上出错。写下来也算是希望后来人不要和我一样在这方面出错。
不过还是不懂为啥https到ssh的转换就会导致git push出错,然后非要这么麻烦的重新设置一下ssh密钥才能解决。不知道是不知自己知识欠缺,其实是用了一个麻烦的方法。不管怎样,至少现在是能够push了。
另:有时候远端有修改的话,是需要先pull一下,然后才能git push -u origin master的。当然这个origin完全可以是你设置的任何名字
祝好啦!
莫名的昨天又不能git push了,然后如此的反复折腾半天后也没有什么结果。然后生成ssh key时,使用
-----------------------------一个小白的不能小白的小白
首先也是各种百度,然后知道原因:就是有https模式转到ssh模式时候这种问题就会出来了。网上大多数人也是出现这种问题。因为https模式下每次git push都要输入账号和密码是在是麻烦。
解决的方法是:因为我已经有了公钥,没有的话看git教程会有如何生成公钥的方法的。我的问题是:改自己的公钥(public key),我不知道为什么会出现公钥不对的问题。
查看是否已经有了
ssh
密钥:
cd ~/.ssh
如果没有密钥则不会有此文件夹,有则备份删除
生成密钥:
ssh-keygen -t rsa -C
“
xxxxx@gmail.com
”
1:查看是否已经有了ssh密钥:cd ~/.ssh 如果没有密钥则不会有此文件夹,有则备份删除(这个必须把这文件完全删掉)
备注:作为一个沉痛的教训就是我一直没有删掉这个文件,每次都是这么overwrite的生成key,结果每次都是白忙活
2:生成密钥: ssh-keygen -t rsa -C “xxxxx@gmail.com” ""里的是自己的邮箱,三次回车,密码为空
3:最后得到了两个文件:id_rsa和id_rsa.pub 添加密钥到ssh:进入你的github,需要之前输入密码. 在github上添加ssh密钥,这要添加的是“id_rsa.pub”里面的公钥。
4: 打开https://github.com/
最后得到了两个文件:
id_rsa
和
id_rsa.pub
添加密钥到
ssh
:进入你的
github,
需要之前输入密码
.
在
github
上添加
ssh
密钥,这要添加的是“
id_rsa.pub
”里面的公钥。
打开 https://github.com/ 在设置中添加密钥
把
id_rsa.pub
用记事本打开之后复制里面的到网站上就可以了。
在设置中添加密钥 把id_rsa.pub用记事本打开之后复制里面的到网站上就可以了。需要注意的是以前的ssh密钥要删除
5:之后在terminal输入:ssh git@github.com,这里需要注意的是,输入的就是这一句话,后面的不是自己的邮箱,最需要注意的是,如果是从一些别的地方copy的话,注意ssh后面只有一个空格,多一个都会出错的
6:
中间的是否确定继续连接,输入yes就ok
7:然后再次git push就可以了。
其实中间的所有过程在网上差不多都能download到,但是我还是费了好几个小时,主要就是一些小的细节上出错。写下来也算是希望后来人不要和我一样在这方面出错。
不过还是不懂为啥https到ssh的转换就会导致git push出错,然后非要这么麻烦的重新设置一下ssh密钥才能解决。不知道是不知自己知识欠缺,其实是用了一个麻烦的方法。不管怎样,至少现在是能够push了。
另:有时候远端有修改的话,是需要先pull一下,然后才能git push -u origin master的。当然这个origin完全可以是你设置的任何名字
祝好啦!
莫名的昨天又不能git push了,然后如此的反复折腾半天后也没有什么结果。然后生成ssh key时,使用
ssh-keygen -t rsa 后面不加邮箱,再把得到的id_rsa.pub加入到github的ssh里就好了。
不过还是没搞懂为啥莫名的我的ssh key就不能使用了,还有就是之前为啥window下的git shell我生成ssh key时可以加邮箱。
以后有时间再认真想这个问题吧
-----------------------------一个小白的不能小白的小白
相关文章推荐
- Git本地仓库push至GitHub远程仓库每次输入账户密码问题解决
- github git push的时候出错 Permission denied (publickey). 解决方法
- how to remote push repository to github--解决403forbidden和publickey问题
- git push是报Permission denied (publickey)错误解决
- 解决fatal:remote error:You can't push to git://github.com/username/*.git问题的办法
- [Github] fatal: remote error: You can't push to git 解决办法
- 【Github】fatal: remote error: You can't push to git 解决办法
- (诊断)解决GitHub使用双因子身份认证“Two-Factor Athentication”后无法git push 代码的“fatal: Authentication failed for ...”错误
- 解决git error: failed to push some refs to 'git@github.com:
- 【Github】fatal: remote error: You can't push to git 解决办法
- 【Github】fatal: remote error: You can't push to git 解决办法
- 解决git指令更新远程仓库github时每次都要输入用户名和密码问题
- [git/GitHub] git push 时报错:fatal: remote error: You can't push to git://github.com/user/xxx.git(已解决)
- git push github 远程仓库 要求每次输入账号密码问题
- github for window 中 git shell 设置代理方法和解决ssl证书错误的问题
- github for window 中 git shell 设置代理方法和解决ssl证书错误的问题
- [Github] fatal: remote error: You can't push to git 解决办法
- github如何解决failed to push some refs to git
- Mac OS下使用SourceTree Push到Github时出现 POST git-receive-pack (chunked) 的解决办法
- Git(GitHub) 005 添加SSH密钥 — 解决:Permission denied (publickey) fatal The remote end hung up unexpectedly