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

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

我这个已经授权了,如果未授权会提示授权,点击授权,并等待成功后即可成功访问
Git SSH 认证配置的更多相关文章
- Git SSH公钥配置
https://www.cnblogs.com/smuxiaolei/p/7484678.html https://blog.csdn.net/weixin_42063071/article/deta ...
- git ssh key配置&解决git每次输入密码
git ssh key配置&解决git每次输入密码:https://blog.csdn.net/qq_42817227/article/details/81415404
- Jenkins上Git ssh登陆配置
1. 首先登陆linux机器 2. 切换到jenkins用户 3. 生成ssh key ssh-keygen -t rsa -C 'amysu@acxiom.com' 4. 将生成的ssh ke ...
- git ssh认证
一般新手用git时,使用HTTPS都需要输入用户名和密码,这是一个很低效的开发过程.(虽然有时可以让开发人员减少push的次数).github提供了几种连接方式,其中以https:开头的代表https ...
- 华为SSH认证配置
[设备型号]华为switch-S5700s ————1: [SW1] rsa/dsa local-key-pair create #创建本地密钥对 The key name will be: SW1_ ...
- git ssh密钥配置添加
1. 初次安装git配置用户名和邮箱 $ git config --global user.name "xxx" $ git config --global user.email ...
- git ssh key配置
原文:https://blog.csdn.net/lqlqlq007/article/details/78983879 git clone支持https和git(即ssh)两种方式下载源码: 当使用 ...
- 多个 git ssh key 配置 Ubuntu os
1.生成ssh key: ssh-keygen -t rsa -C “email@sss.com” 此时,在~/.ssh/文件夹下会有两个文件, id_rsa 和 id_rsa.pub.分别保存ssh ...
- Git SSH密钥对生成以及多个SSH存在情况配置
一.使用Git Bash 生成一个新的SSH密钥 1. 打开 Git Bash. 2. 邮箱设置粘贴下面的文字,替换成为你自己的邮箱. Github SSH 1 $ ssh-keygen -t rsa ...
- GitHub的SSH key配置以及常用的git命令介绍
一. GitHub的SSH key配置 (以windows为例,Mac iOS系统类似) SSH Key 是一种方法来确定受信任的计算机,从而实现免密码登录.Git是分布式的代码管理工具,远程的代码管 ...
随机推荐
- ts中接口
前言:ts定义接口的任意一个属性 interface IPerson { name: string age: number family?: any[] // Error,因为不是任意类型的子集 [p ...
- Python 遍历整个列表
操作列表 遍历整个列表,无论列表有多长,循环让列表中的每一个元素都采取一个或一系列相同的措施,从而高效地处理任何长度的列表,包含数以千至数百万个元素的列表. 遍历整个列表 通过for循环解决遍历 从列 ...
- MQTT-会话
MQTT会话 为什么需要会话 假如有以下场景,客户端A发送消息到服务端,服务端转发给客户端B,如果这个时候服务端和客户端B的网络连接断开,那么就无法保证消息到达,并且客户端A不知道B连接断开,还会 ...
- Prism Sample 14-UsingEventAggregator
这次是事件聚合器的应用. 事件聚合器应用第一步:定义一个事件聚合器,应该是一个可访问的公共区域,例14为它做了一个core的项目.代码很简单: using Prism.Events; namespac ...
- React项目build
1.项目根目录下新建app.js文件 // 使用 express 搭建一个服务器 const express = require("express"); const { creat ...
- 2022-11-12:以下rust语言代码中,结构体S实现了crate::T1::T2的方法,如何获取方法列表?以下代码应该返回[“m1“,“m2“,“m5“],顺序不限。m3是S的方法,但并不属于c
2022-11-12:以下rust语言代码中,结构体S实现了crate::T1::T2的方法,如何获取方法列表?以下代码应该返回["m1","m2"," ...
- 2022-01-12:给定一个正数数组arr,长度为n,下标0~n-1, arr中的0、n-1位置不需要达标,它们分别是最左、最右的位置, 中间位置i需要达标,达标的条件是 : arr[i-1] >
2022-01-12:给定一个正数数组arr,长度为n,下标0~n-1, arr中的0.n-1位置不需要达标,它们分别是最左.最右的位置, 中间位置i需要达标,达标的条件是 : arr[i-1] &g ...
- vue全家桶进阶之路3:Node.js
Node.js发布于2009年5月,由Ryan Dahl开发,是一个基于Chrome V8引擎的JavaScript运行环境,使用了一个事件驱动.非阻塞式I/O模型, 让JavaScript 运行在服 ...
- uni-app介绍
"优你"框架 uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS.Android.Web(响应式).以及各种小程序(微信/支付宝/ ...
- Pycharm的Available Packages为空问题
问题描述:可用软件包为空,Pycharm的Available Packages为空问题 打开软件包仓库设置画面 新建软件包仓库 输入软件包仓库 完成,可用软件包 Available Packages正 ...