首页 > 其他分享 >Git SSH 认证配置

Git SSH 认证配置

时间:2023-01-11 19:57:09浏览次数:62  
标签:git 密钥 配置 认证 github Git SSH 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 "[email protected]"

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

生成密钥对

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

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

ssh-keygen -t rsa -C "[email protected]"

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

将公钥绑定到 github

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

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

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

点击新增 SSH key

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

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

 

校验是否配置成功

输入命令 ssh -T [email protected] 查看 github ssh 是否配置成功

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

【可能遇到问题】

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

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

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

标签:git,密钥,配置,认证,github,Git,SSH,ssh
From: https://www.cnblogs.com/7tiny/p/17044682.html

相关文章

  • git设置代理
    #设置ssgitconfig--globalhttp.proxy'socks5://127.0.0.1:1080'gitconfig--globalhttps.proxy'socks5://127.0.0.1:1080'#设置代理gitconfig--globalh......
  • 如何删除Git中缓存的用户名和密码
    昨天在上传代码的时候提示输入用户名密码,结果输错了3次就没有提示框了,就一直报错(身份验证失败),没办法提交代码。在使用git的过程中,我们也会经常遇到以前保存在git的用户名密......
  • Git
    1.下载git的官网下载路径:Git-DownloadingPackage(git-scm.com)【steup】设置版本:是安装到自己电脑上的版本,可以使用使用右键“gitBashhere”或者“gitGUIhere”......
  • 软件开发入门教程网之Git 查看提交历史
    Git查看提交历史Git提交历史一般常用两个命令:gitlog -查看历史提交记录。gitblame<file> -以列表形式查看指定文件的历史修改记录。​​gitlog{#git-log}​​在......
  • 软件开发入门教程网之Git 分支管理
    Git分支管理几乎每一种版本控制系统都以某种形式支持分支。使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作。有人把Git的分支模型称为必杀......
  • 企业应用架构研究系列二十五:IdentityServer4 认证服务搭建
    IdentityServer4更新了开源协议,曾经想替换它,不在使用IdentityServer4,但是后来,研究来研究去,发现IdentityServer4的功能实在是强大,设计体系完整,随着最后版本的升级,现......
  • 软件开发入门教程网之Git 基本操作
    Git基本操作Git的工作就是创建和保存你项目的快照及与之后的快照进行对比。本章将对有关创建与提交你的项目快照的命令作介绍。Git常用的是以下6个命令:gitclone ......
  • 欧盟无线充CE​​​认证​​​CE-RED指令介绍
    欧盟关于无线遥控产品、通讯产品,必须符合RED指令(无线电及通讯终端指令)-1999/5/EC要求,最新无线电设备指令按照2014/53/EU要求(RED指令)。2016年开始强制执行。​RED指令所包括......
  • Reduce Depth of an Existing Git Repo 让 git 只保留最近 n 次的 commit 删除其余的
    shallowclonegitclone--depth=1https://github.com/cloudwu/skynet.gitgitlog--oneline|wc-l1du-hs.git792K .gitfullyclone,andreducethed......
  • 拉取git时报错Failed to connect to github.com port 443 : Timed out
    一、问题描述报错如下图:二、问题分析git所设端口与系统代理不一致,需重新设置。三、解决方法打开设置>网络与Internet>代理。记录下当前系统代理的IP地址和端口......