Git SSH 认证配置

【前言】

我们在开发过程中,经常会和github,gitlab或者gitee打交道,一般临时克隆(clone)其他人的项目学习参考时,我们大多采用 https 的方式进行 clone

但如果在参与多个项目时,https 认证方式会保存临时的身份认证凭证,这种认证方式会过期在提交代码时,会频繁提示身份的认证。当然也可以通过 git config 的 credential.helper store 参数自动存储账号密码,这样可以保证长期可以使用,所有参与的项目都需要如此配置。除了身份认证过期问题,https方式在访问github的大型项目时,由于国内网络环境,经常会导致超时,这时候,ssh似乎是更好的选择。当然,配置ssh也并不复杂

【配置ssh】

安装git客户端

这个就不单独介绍了,首先将git的客户端安装好再进行下一步

配置全局账号

以github为例,我们将github的账号和邮箱配置在本地git的全局配置里

通过 git config --global --list命令查看是否配置以及配置的正确性

如果没有配置,则通过命令进行配置

git config --global user.name "name"
git config --global user.email "name@xxx.com"

配置好后,通过上述 list 命令即可查询到全局配置

生成密钥对

ssh采用sha254非堆成加密算法,因此我们要生成一对密钥(公钥和私钥)

通过 ssh-keygen 命令生成密钥对

ssh-keygen -t rsa -C "email@xxx.com"

需要确认 y/n 输入 y,然后一路回车即可

将公钥绑定到 github

在 .ssh 目录下找到生成的公钥文件,一般在  C:\Users\{your user name}\.ssh 目录

使用记事本或其他文本编辑器打开该文件,复制密钥字符

登录github,打开设置页面,找到 ssh 密钥配置

点击新增 SSH key

然后输入刚才复制的公钥字符

添加后,可以看到密钥已经保存在这里了

 

校验是否配置成功

输入命令 ssh -T git@github.com 查看 github ssh 是否配置成功

显示如下提示,说明已经成功配置了ssh

【可能遇到问题】

企业账户可能配置好后不能提交代码

正常个人用户按上面配置即可顺利绑定账号,但是企业账号添加公钥后,提交代码会提示没有权限,需要在添加密钥这里授权一下

我这个已经授权了,如果未授权会提示授权,点击授权,并等待成功后即可成功访问

posted @ 2023-01-11 19:45  7tiny  阅读(610)  评论(0编辑  收藏  举报