GitHub教程 SSH keys配置 - Go语言中文社区

GitHub教程 SSH keys配置


SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。

在管理Git项目赏,有两种克隆到本地的方法

  • 直接使用https url克隆到本地
  • 使用SSH url克隆到本地

这两种方式的主要区别在于:使用https url克隆对初学者来说会比较方便,复制https url然后到git Bash里面直接用clone命令克隆到本地就好了,但是每次fetch和push代码都需要输入账号和密码,这也是https方式的麻烦之处。而使用SSH url克隆却需要在克隆之前先配置和添加好SSH key,必须是这个项目的拥有者。否则你是无法添加SSH key的。另外ssh默认是每次fetch和push代码都不需要输入账号和密码,如果你想要每次都输入账号密码才能进行fetch和push也可以另外进行设置。

1.检查你电脑上是否有SSH Key

如果是第一次配置,当然是没有了。如果之前配置过,你没误删,那肯定是有。不过熟悉操作流程,你还是试一下吧。
在这里插入图片描述

2.创建SSH Key(如果你电脑上有了,你就可以直接跳过这一步)

请打开git bash,并键入命令:

ssh-keygen -t rsa -C “邮箱名”

按enter键后,会先告诉你生成的文件保存在哪,再按enter,会提示设置密码,
 然后他就会显示这两行

Generating public/private rsa key pair. 
Enter file in which to save the key (/c/Users/16627/.ssh/id_rsa):

这是让你输入一个文件名,用于保存刚才生成的 SSH key 代码。如果你不输入,直接回车,那么就会默认生成id_rsa和id_rsa.pub两个秘钥文件(如下提示)。

Created directory ‘/c/Users/16627/.ssh’.

紧接着又会提示你

Enter passphrase (empty for no passphrase): 
Enter same passphrase again:

接着又会提示你输入两次密码(该密码是你push文件的时候要输入的密码,而不是github管理者的密码),当然你还可以不输入密码,直接按回车。那么fetch和push的时候就不需要输入密码。

在这里插入图片描述

当你看到上面这段代码,那就说明你的 SSH key 已经创建成功,你可以看一下,现在文件是真的存在了。
 在这里插入图片描述

3.添加SSH Key到GitHub

复制全部内容,打开 GitHub 主页,左侧选择 SSH and GPG Keys, 点击 Add SSH Keys,然后输入名称,并将复制的内容粘贴过来,添加即可。
在这里插入图片描述
在这里插入图片描述
点击右上角新建一个SSH Key。
在这里插入图片描述
title随便给他起个名字就好。然后是key,这时候你要打开你刚才在电脑上的SSH key。刚才提示你建立的那段文字有SSH key的地址,按照地址找到你的文件,用记事本打开id_rsa.pub文件,全选其中的内容粘贴到网页的Key中即可。
在这里插入图片描述
在这里插入图片描述
然后你就会受到建立成功的邮件了。
在这里插入图片描述

4.测试一下该SSH key

在git Bash 中输入以下代码

$ ssh -T git@github.com
注意是git@github.com,不是你的邮箱。

然后会提示你:

The authenticity of host ‘github.com (192.30.255.112)’ can’t be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no)?

正常提示,你只需要YES就可以。如果你创建 SSH key 的时候设置了密码,接下来就会提示你输入密码,如果你没设置密码会提示你:

Warning: Permanently added ‘github.com,192.30.255.112’ (RSA) to the list of known hosts.
Hi “用户名”! You’ve successfully authenticated, but GitHub does not provide shell access.

如果用户名是正确的,你已经成功设置SSH密钥。如果你看到 “access denied” ,者表示拒绝访问,那么你就需要使用 https 去访问。

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/zhizhengguan/article/details/105539195
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢