【前言】

我们在开发过程中,经常会和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 认证配置的更多相关文章

  1. Git SSH公钥配置

    https://www.cnblogs.com/smuxiaolei/p/7484678.html https://blog.csdn.net/weixin_42063071/article/deta ...

  2. git ssh key配置&解决git每次输入密码

    git ssh key配置&解决git每次输入密码:https://blog.csdn.net/qq_42817227/article/details/81415404

  3. Jenkins上Git ssh登陆配置

    1. 首先登陆linux机器 2. 切换到jenkins用户 3. 生成ssh key  ssh-keygen -t rsa -C 'amysu@acxiom.com'   4. 将生成的ssh ke ...

  4. git ssh认证

    一般新手用git时,使用HTTPS都需要输入用户名和密码,这是一个很低效的开发过程.(虽然有时可以让开发人员减少push的次数).github提供了几种连接方式,其中以https:开头的代表https ...

  5. 华为SSH认证配置

    [设备型号]华为switch-S5700s ————1: [SW1] rsa/dsa local-key-pair create #创建本地密钥对 The key name will be: SW1_ ...

  6. git ssh密钥配置添加

    1.  初次安装git配置用户名和邮箱 $ git config --global user.name "xxx" $ git config --global user.email ...

  7. git ssh key配置

    原文:https://blog.csdn.net/lqlqlq007/article/details/78983879 git clone支持https和git(即ssh)两种方式下载源码:  当使用 ...

  8. 多个 git ssh key 配置 Ubuntu os

    1.生成ssh key: ssh-keygen -t rsa -C “email@sss.com” 此时,在~/.ssh/文件夹下会有两个文件, id_rsa 和 id_rsa.pub.分别保存ssh ...

  9. Git SSH密钥对生成以及多个SSH存在情况配置

    一.使用Git Bash 生成一个新的SSH密钥 1. 打开 Git Bash. 2. 邮箱设置粘贴下面的文字,替换成为你自己的邮箱. Github SSH 1 $ ssh-keygen -t rsa ...

  10. GitHub的SSH key配置以及常用的git命令介绍

    一. GitHub的SSH key配置 (以windows为例,Mac iOS系统类似) SSH Key 是一种方法来确定受信任的计算机,从而实现免密码登录.Git是分布式的代码管理工具,远程的代码管 ...

随机推荐

  1. ts中接口

    前言:ts定义接口的任意一个属性 interface IPerson { name: string age: number family?: any[] // Error,因为不是任意类型的子集 [p ...

  2. Python 遍历整个列表

    操作列表 遍历整个列表,无论列表有多长,循环让列表中的每一个元素都采取一个或一系列相同的措施,从而高效地处理任何长度的列表,包含数以千至数百万个元素的列表. 遍历整个列表 通过for循环解决遍历 从列 ...

  3. MQTT-会话

    MQTT会话 为什么需要会话 ​ 假如有以下场景,客户端A发送消息到服务端,服务端转发给客户端B,如果这个时候服务端和客户端B的网络连接断开,那么就无法保证消息到达,并且客户端A不知道B连接断开,还会 ...

  4. Prism Sample 14-UsingEventAggregator

    这次是事件聚合器的应用. 事件聚合器应用第一步:定义一个事件聚合器,应该是一个可访问的公共区域,例14为它做了一个core的项目.代码很简单: using Prism.Events; namespac ...

  5. React项目build

    1.项目根目录下新建app.js文件 // 使用 express 搭建一个服务器 const express = require("express"); const { creat ...

  6. 2022-11-12:以下rust语言代码中,结构体S实现了crate::T1::T2的方法,如何获取方法列表?以下代码应该返回[“m1“,“m2“,“m5“],顺序不限。m3是S的方法,但并不属于c

    2022-11-12:以下rust语言代码中,结构体S实现了crate::T1::T2的方法,如何获取方法列表?以下代码应该返回["m1","m2"," ...

  7. 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 ...

  8. vue全家桶进阶之路3:Node.js

    Node.js发布于2009年5月,由Ryan Dahl开发,是一个基于Chrome V8引擎的JavaScript运行环境,使用了一个事件驱动.非阻塞式I/O模型, 让JavaScript 运行在服 ...

  9. uni-app介绍

    "优你"框架 uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS.Android.Web(响应式).以及各种小程序(微信/支付宝/ ...

  10. Pycharm的Available Packages为空问题

    问题描述:可用软件包为空,Pycharm的Available Packages为空问题 打开软件包仓库设置画面 新建软件包仓库 输入软件包仓库 完成,可用软件包 Available Packages正 ...