git ssh公钥

在全局缓环境中生成ssh公钥,并添加到github账号的公钥列表中,检测是否添加成功,显示成功,如下:图片描述

在D盘新建一个repo后,想和github的repo关联,但是在该repo下,检测是否添加成功,显示不成功,无法推送内容,如下:图片描述

难道是全局环境创建的公钥在具体某个repo中不能使用?本人小白一枚,还请大牛指点指点...谢谢

阅读 3.3k
3 个回答

GIT_SSH_COMMAND="ssh -vvv" git push -u origin master的结果贴出来看看。

顺便也把ssh -vvvT git@github.com的结果贴出来看看

GIT_SSH_COMMAND="ssh -vvv" git push -u origin master的结果图片描述

图片描述

图片描述

ssh -vvvT git@github.com的结果
图片描述

图片描述

图片描述

根据你的需求,你想做的是实现github免密登陆?

免密登陆

1.什么是SSH协议

  • Secure Shell 安全的shell
  • http协议的格式

  • ssh 协议格式

    • 用户名@域名
  • ssh 一般用作服务器的远程管理,我们可以通过ssh安全的shell管理服务器
  • 在bash中提供了一个ssh命令,这个命令就是可以通过ssh协议连接服务器进行管理的!

2.ssh免密登录的原理

  • 在服务器端,有一个名单,名单中存储所有能够登录当前服务器的客户端的公钥!
  • 由于每次客户端在请求登录的时候,会自动将客户端本身的公钥自动发送给服务器,服务器在拿到公钥之后,和名单中的内容进行一一对照,如果有当前这个公钥,那么就直接允许登录了!

3.在自己电脑上生成 公钥以及私钥!

git 上直接输入下面的命令

ssh-keygen -t rsa
  • 执行这个命令的时候,一路默认,一路敲回车
  • 直到看到冒泡泡为止!
  • 生成的秘钥默认在 用户根目录下面的.ssh文件夹中

    c:\users\你自己的用户名\.ssh  

4. 实现github免密登录的过程

  1. 如果当前电脑从未生成过秘钥,要执行ssh-keygen -t rsa 生成秘钥
  2. 在用户根目录下面的.ssh文件夹中找到生成密钥,id_rsa.pub就是我们需要的公钥文件,复制里面所有的内容
  3. 打开github页面
  4. 点击自己头像 选择下面的settings
  5. 进入到settings页面之后左边栏中会有一个 ssh and gpg keys ,点击
  6. 进入到该页面之后,页面的右上角会有一个 New SSH Key 的绿色按钮, 点击
  7. title文本框中选择性(可写可不写)的输入内容
  8. 在key文本框中,粘贴刚才复制的公钥的全部内容
  9. 点击下面的绿色的 Add SSH Key 按钮
  10. 获取或者push项目的时候,一定要记得选择ssh链接,才可以实现免密登录!

注意:

你要上传项目的时候,先在github上 new 一个空的项目,复制他的ssh链接,在git里将需要托管的项目git init..git add -A.. git commit -m"" 后,执行git push ssh链接 master,将项目托管到github上。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题