git SSH免密登录
git系列文章目录
第八章 git SSH免密登录的使用
文章目录
- git系列文章目录
- 前言
- 一、生成密钥
- 二、使用步骤
- 1.使用VSCODE打开.pub文件复制其中的内容
- 2.打开github或者gitee进入设置选项设置密钥
- 3.使用密钥
- 总结
前言
虽然Windows系统提供了凭据功能,但是介绍ssh提交,的免密操作
一、生成密钥
进入当前用户的目录
双击打开或者命令方式
Apple@DESKTOP-ECLNIU2 MINGW64 ~/Desktop
$ cd ~Apple@DESKTOP-ECLNIU2 MINGW64 ~
$ pwd
/c/Users/AppleApple@DESKTOP-ECLNIU2 MINGW64 ~
$
然后在当前文件夹下创建SSH 密钥
Apple@DESKTOP-ECLNIU2 MINGW64 ~
$ ssh-keygen -t rsa -C 18261897435@139.com
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/Apple/.ssh/id_rsa):
Created directory '/c/Users/Apple/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/Apple/.ssh/id_rsa
Your public key has been saved in /c/Users/Apple/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:QEZzuGzZzFBRmmp+DSu0o1VXEvxp+0KpKjjrWfONv6M 18261897435@139.com
The key's randomart image is:
+---[RSA 3072]----+
| .=o++o |
| ooo o.. |
| ..Bo .... |
| =o+ o+ |
| .+ S .. o |
| + o = + |
| .O o .o . |
| o=.* oo . . |
| .=o .E++o . |
+----[SHA256]-----+Apple@DESKTOP-ECLNIU2 MINGW64 ~
$
此时创建了.ssh文件夹和两个文件
二、使用步骤
1.使用VSCODE打开.pub文件复制其中的内容
2.打开github或者gitee进入设置选项设置密钥
选择SSH公钥
标题随便起,但要方便记忆
输入刚才vscode打开的密钥复制的key到公钥
点击确定
输入密码验证后就可以使用了
3.使用密钥
给SSH地址起一个别名
复制地址
给ssh地址起别名
如下(示例):
Apple@DESKTOP-ECLNIU2 MINGW64 ~/Desktop/git basic operation/GitResp (master)
$ git remote -v
origin https://gitee.com/gitee18261897435/git-resp.git (fetch)
origin https://gitee.com/gitee18261897435/git-resp.git (push)Apple@DESKTOP-ECLNIU2 MINGW64 ~/Desktop/git basic operation/GitResp (master)
$ git remote add origin_ssh git@gitee.com:gitee18261897435/git-resp.gitApple@DESKTOP-ECLNIU2 MINGW64 ~/Desktop/git basic operation/GitResp (master)
$ git remote -v
origin https://gitee.com/gitee18261897435/git-resp.git (fetch)
origin https://gitee.com/gitee18261897435/git-resp.git (push)
origin_ssh git@gitee.com:gitee18261897435/git-resp.git (fetch)
origin_ssh git@gitee.com:gitee18261897435/git-resp.git (push)Apple@DESKTOP-ECLNIU2 MINGW64 ~/Desktop/git basic operation/GitResp (master)
$
别名起成功了
创建一个Test100.txt用于演示登录
注意第一次使用免密登录的时候需要输入一个yes
Apple@DESKTOP-ECLNIU2 MINGW64 ~/Desktop/git basic operation/GitResp (master)
$ git add Test100.txtApple@DESKTOP-ECLNIU2 MINGW64 ~/Desktop/git basic operation/GitResp (master)
$ git commit -m "项目经理添加了一个Test100.txt用于演示SSH_Key登录" Test100.txt
[master 02135f1] 项目经理添加了一个Test100.txt用于演示SSH_Key登录1 file changed, 1 insertion(+)create mode 100644 Test100.txtApple@DESKTOP-ECLNIU2 MINGW64 ~/Desktop/git basic operation/GitResp (master)
$ git push origin_ssh master
The authenticity of host 'gitee.com (212.64.62.183)' can't be established.
ED25519 key fingerprint is SHA256:+ULzij2u99B9eWYFTw1Q4ErYG/aepHLbu96PAUCoV88.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])?
Host key verification failed.
fatal: Could not read from remote repository.Please make sure you have the correct access rights
and the repository exists.Apple@DESKTOP-ECLNIU2 MINGW64 ~/Desktop/git basic operation/GitResp (master)
$ git push origin_ssh master
The authenticity of host 'gitee.com (212.64.62.183)' can't be established.
ED25519 key fingerprint is SHA256:+ULzij2u99B9eWYFTw1Q4ErYG/aepHLbu96PAUCoV88.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'gitee.com' (ED25519) to the list of known hosts.
To gitee.com:gitee18261897435/git-resp.git! [rejected] master -> master (fetch first)
error: failed to push some refs to 'gitee.com:gitee18261897435/git-resp.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.Apple@DESKTOP-ECLNIU2 MINGW64 ~/Desktop/git basic operation/GitResp (master)
$
因为没有进行远程库拉取,先拉取后再提交
Apple@DESKTOP-ECLNIU2 MINGW64 ~/Desktop/git basic operation/GitResp (master)
$ git pull origin_ssh master
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 4 (delta 1), reused 3 (delta 1), pack-reused 0
Unpacking objects: 100% (4/4), 1.35 KiB | 277.00 KiB/s, done.
From gitee.com:gitee18261897435/git-resp* branch master -> FETCH_HEAD* [new branch] master -> origin_ssh/master
Merge made by the 'ort' strategy.Test2.txt | 1 +1 file changed, 1 insertion(+)create mode 100644 Test2.txtApple@DESKTOP-ECLNIU2 MINGW64 ~/Desktop/git basic operation/GitResp (master)
$ git push origin_ssh master
Enumerating objects: 7, done.
Counting objects: 100% (7/7), done.
Delta compression using up to 16 threads
Compressing objects: 100% (4/4), done.
Writing objects: 100% (5/5), 581 bytes | 581.00 KiB/s, done.
Total 5 (delta 2), reused 0 (delta 0), pack-reused 0
remote: Powered by GITEE.COM [GNK-6.2]
To gitee.com:gitee18261897435/git-resp.git7a79c73..a56a9e1 master -> masterApple@DESKTOP-ECLNIU2 MINGW64 ~/Desktop/git basic operation/GitResp (master)
$
检查远程库查看推送成功
总结
ssh的好处是:不用每次都进行身份验证 缺陷:只能针对一个账号
git SSH免密登录相关推荐
- Git——SSH免密登录
一.免密登录 由于win10系统有凭据管理器,所以在使用Https地址的方式推送的时候不需要每次都登录GitHub,但是在其他windows的系统中不是这样,这时我们可以使用SSH的方式推送(pu ...
- Git配置SSH 免密登录
前言:相信大家现在在工作中,都在使用Git吧.众所周知,Git有两种克隆代码的方式: 一种是http,另外一种就是SSH. SSH免密登录,免去了每次登录都输入账号密码的繁琐,但是却需要配置在电脑上. ...
- 【Git1】指令,分支,ssh免密登录
文章目录 1.init/add/commit/pull/push,status/diff/log/reflog,reset/checkout/clone:工缓归 2.分支操作:git branch - ...
- ssh免密登录配置方法及配置
ssh免密登录配置方法及配置 直接上步骤,记我们本机为机器A,而机器B.机器C等是我们的服务器,我们要配置的是A到B.C等的 ssh 免密登录. 1 在机器A上生成秘钥对 ssh-keygen 会得到 ...
- linux上ssh免密登录原理及实现
因为我的服务器集群需要回收日志到中央进行统一处理,所以需要建立ssh互信关系实现免密登录.关于ssh的使用大家可能都很熟悉了,我们今天主要来讲下ssh连接和免密登录的原理. scp 传输文件 scp( ...
- linux上怎么实现ssh免密登录
这里直接写步骤,下面的有兴趣可以看看 1.进入到.ssh目录下 [root@wangjian /]# cd /root/.ssh/ [root@wangjian .ssh]# 2. 执行生成密钥,所有 ...
- Git配置免密登录及常用操作的详细教程(基于Gitee平台)
文章目录 前言 一.SSH免密登录配置 1.安装GIt 2.生成SSH 3.配置 SSH key 4.验证SSH key是否配置成功 二.创建远程仓库 1.登录自己的Gitee账号 2.创建远程仓库 ...
- linux 配置免密码登录,Linux - 配置SSH免密登录 - “ssh-keygen”的基本用法
1 什么是SSH 引用百度百科的说明: SSH 为 Secure Shell的缩写,由 IETF 的网络小组(Network Working Group)所制定:它是建立在应用层基础上的安全协议. S ...
- 笔记:一台主机上配置多个私钥实现ssh免密登录
笔记:一台主机上配置多个私钥实现ssh免密登录 一 背景 现有主机已经成功配置了对其他主机的ssh免密登录,在本地已经保存了GitHub的私钥.目前需要在这台主机上克隆GitHub自己已创建仓库,使用 ...
最新文章
- JAE京东云引擎Git上传管理代码教程和京东云数据库导入导出管理
- Zookeeper的功能以及工作原理
- 汇编语言随笔(16)- 对磁盘进行读写(int 13h 中断例程)和实验 17
- android鼠标dpi,对Android 中 px、DPI、dp(dip)、density的理解
- SpringBoot禁用命令行参数
- spring配置数据源(加载properties文件)
- 【转帖】Reporting Service rdl报表,在aspx页面显示一张完整的RDL报表
- json/ 发送形式_24/7的完整形式是什么?
- 对话华为云专家,摆脱无意义“内卷”
- 一次线上事故,让我对MySql的时间戳存char(10)还是int(10)有了全新的认识
- 中国晶圆和集成电路(IC)行业市场供需与战略研究报告
- 串联和并联拓扑PI控制器
- java $字符串替换_Java8字符串替换方法梳理
- WebApp实时开源框架Clouda---认识心得
- “Spark三剑客”之SparkCore和SparkSql学习笔记(零基础入门)(一)
- IDS--入侵检测系统的学习
- linux 下如何添加用户、权限
- 百度地图配合java 代码制作地图
- Spring Framework系统架构
- Tomcat的启动与停止