Git提交时有Https和SSH两种验证方式,Https的方式需要帐号和密码比较好理解,不过它需要在每次提交时输入帐号和密码,有点麻烦;而SSH的功能可以粗暴的理解为记住帐号密码,不过对这个过程有人会有点疑惑。首先,我们用SSH命令生成一个公钥-私钥对,我们会把公钥添加到Git的服务器,把私钥放在本地。提交文件的时候Git服务器会用公钥和客户端提交私钥做验证(具体细节不究),如果验证通过则提交成功,那么我们在把公钥添加到服务器的时候肯定是需要登录Git服务器的,这个过程其实可以理解为帐号和密码托管给SSH了,所以也是相当于输入了帐号密码,但是由SSH帮你记住了。这么理解是可以,但是SSH的意义不仅仅是这样,关于SSH的更详细内容看客可以自行再了解。
————————————————
版权声明:本文为CSDN博主「严振杰」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/yanzhenjie1003/java/article/details/69487932

man ssh

终端可以查看详细的手册,大概1000行。懒得看跳过吧。用到再去查。

man ssh

配置

1.进入设置页面

2.点击SSH密钥

3.生成ssh公钥私钥

GitLab有教程,你也可以看这两个教程。下面进入正题

打开终端

⌘+空格 输入终端或者terminal

输入

ssh-keygen -t ed25519 -C "email@example.com"

email@example.com部分改为你的gitlab账号邮箱

默认会存储在当前用户目录下的.ssh文件夹

来自wikiPedia
延伸阅读:
一场椭圆曲线的寻根问祖之旅

http://ed25519.cr.yp.to/Ed25519是一个数字签名算法,签名和验证的性能都极高, 一个4核2.4GHz 的 Westmere cpu,每秒可以验证 71000 个签名,安全性极高,等价于RSA约3000-bit。签名过程不依赖随机数生成器,不依赖hash函数的防碰撞性,没有时间通道攻击的问题,并且签名很小,只有64字节,公钥也很小,只有32字节。 部署情 况:http://ianix.com/pub/ed25519-deployment.html
————————————————
版权声明:本文为CSDN博主「老杨_QQ122209017」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/sinat_34070003/java/article/details/79462557
ed25519加密解密很快,生成时间短而且安全性更高,rsa则加密解密稍慢,生成时间长,安全性没有ed25519高,只是rsa基本都是默认,所以用的人更多,但是建议转换为ed25519,网站软件现在基本都支持了.
但也是有漏洞,你可以参阅
Ed25519/EdDSA 签名算法导致的密钥泄露的漏洞研究

下来让你设置密钥密码,可以直接回车为空就行

生成完成

这时候打开.ssh文件夹你就可以看到公钥私钥对了

或者直接在终端中查看

cd ~/.ssh ls -Al

4.拷贝公钥至公司GitLab

方式一终端

将公钥拷贝至剪贴板

pbcopy < ~/.ssh/id_ed25519.pub

pbcopy, pbpaste - provide copying and pasting to the pasteboard (the Clipboard) from command line

方式二 - 文本编辑器或者VS打开拷贝.pub中的字符串

回到GitLab ssh配置页面,直接粘贴

标题默认是以你的邮箱作为标题,你可以自行决定修改与否,只是用来显示以示区分

然后点击添加,即可完成公钥在项目的配置。

正常情况下,到此已经可以通过ssh克隆项目了。

如果不行请往下看

5.修改ssh配置文件

编辑.ssh下的config文件的内容:

Host 192.168.14.155 HostName 192.168.14.155 User example@foxmail.com PreferredAuthentications publickey IdentityFile ~/.ssh/id_ed25519

将example@foxmail.com改为你的gitlab账户邮箱。

还有更省事的方式,直接终端里ssh-add一下

ssh-add ~/.ssh/id_ed25519

延伸阅读

Git管理多个SSH密钥,Git多帐号配置

配置多个git账号_Git ssh配置(Mac)相关推荐

  1. 配置多个git账号的ssh密钥

    博客改版,请直接访问新版文章:https://www.cnblogs.com/xiaoxi666/p/9975981.html 背景 我们在工作中会以 ssh 的方式配置公司的 git 账号,但是平时 ...

  2. 配置多个git账号或多个SSH账号

    开发过程中可能会需要在同一台电脑上配置两个git账号,一个账号用来将公司产品推到公司的代码仓库,另一个账号需要将自己私人的"玩具"推到github等平台,这就可能会需要使用不同的端 ...

  3. 配置多个git账号_在Windows下配置多个git账号

    本文记录了在Windows下配置两个github账号的过程. 1. 生成并部署SSH key 安装好Git客户端后,打开git bash,输入以下命令生成user1的SSH Key: ssh-keyg ...

  4. 配置多个git账号_docker随手笔记第七节 jenkins通过git部署java微服务插件安装

    docker随手笔记第一节 docker概念及安装 docker随手笔记第二节 docker常用命令解析 docker随手笔记第三节 docker构建java镜像 docker随手笔记第四节 dock ...

  5. 配置多个git账号_一台电脑,两个及多个git账号配置

    1. 生成两(多)个ssh公钥私钥 假定其中一个是id_rsa, 另一个时id_rsa_two [,第三个是id_rsa_gitlab]. 具体生成方法如下: ##若要自定义id_rsa文件请先切换目 ...

  6. 一台电脑上配置多个git账号(gitee),向不同git线上仓库提交(命令行/TortoiseGit同时) 代码

    目录 1.一台电脑上实现与多个git在线仓库提交代码的实际场景 2.安装git TortoiseGit 生成SSH key 和 git的.ssh目录 创建并配置config文件 2.1.首先必须先安装 ...

  7. idea 配置多个git账号_一台机器使用不同的Git账号

    一台机器使用不同的Git账号 场景 在日常使用 git 作为仓库使用的时候,有时可能会遇到这样的一些情况: 1. 有两个 `github` 账号,一台电脑怎么同时连接这两个账号进行维护呢? 2. 自己 ...

  8. 不同项目配置不同的 Git 账号

    遇到 在一台电脑里,通常会遇到这种情况.有公司的 Git 账号提交公司的 Gitlab,有自己的 Github 账号提交 Github 仓库. 比如像我的公司 Git 账号为 xiaojia,但我的 ...

  9. Git账号以及TortoiseGit配置

    2019独角兽企业重金招聘Python工程师标准>>> Http方式 这个没什么好说的,直接clone http的地址(git地址分为ssh地址和http地址),只是每次同步(pul ...

  10. 支持多个git服务器的ssh配置方法及ssh config配置解释以及ssh-agent简单介绍

    生成SSH key ssh-keygen -t rsa -C "yuhang2cs@gmail.com" - Generating public/private rsa key p ...

最新文章

  1. 熟悉常用的Linux操作
  2. PL/SQL无法登录
  3. Linux下给挂载U盘或者SD卡
  4. Linq 团队的问题
  5. LINUX操作系统手机刷机包制作、修改方法
  6. 第一百二十期:终于有篇看的懂的B树文章了!
  7. java爬取单张图片
  8. 一加屏幕检测代码_一加7Pro深度体验:亿元屏幕真曲面
  9. C++STL笔记(十):queue详解
  10. 【干货】统计学思维导图
  11. 项目进度管理:活动之间的四种依赖关系
  12. 安徽师范大学数学计算机徐德琴,Snake模型在指纹图像分割中的应用
  13. vue中数字转金额格式
  14. 九宫怎么排列和使用_风水知识:三元九运与九宫飞星排布方法!
  15. excel 筛选重复项_列表项的Excel筛选器:2011年“鲨鱼周”
  16. linux源码编译安装apache( httpd-2.4.53)处理服务器支持 TLS Client-initiated 重协商攻击(CVE-2011-1473)
  17. fd leak问题查找(Android)
  18. 统计学学习日记:L6-离散趋势分析之总体方差和标准差
  19. Tensorflow框架初识
  20. 安卓虚拟键盘_安卓手机开启全局手势导航的方法,拯救老设备

热门文章

  1. 深入理解的JavaScript函数编程
  2. 开源项目bootdo的实战开发笔记
  3. 关于C++的字符串操作
  4. python学习笔记__Python的安装
  5. C/C++函数调用方式
  6. [经验]修改SDI主窗口Title
  7. 智能对话训练师进阶本领:复杂对话流程处理
  8. 天池-新冠疫情相似句对判定大赛top6方案及源码
  9. 学界 | NLP年度盛宴EMNLP/CoNLL 2018最精彩论文精选(摘要+评论)
  10. 头条面试题,4种解法,60+图清晰讲解,面试官让我优化,小夕一通优化最终击败100%用户