使用SSH推拉Github代码


快速使用

  1. ssh-keygen -t rsa -b 4096 -C "your_email@example.com 创建ssh密钥(一直回车,不要指定目录,不要设置密码)
  2. 将生成的 ~/id_ras.pub 中的内容复制到Github对应位置即可

1.SSH简介

SSH(Secure Shell)是一种用于在网络上安全地进行远程登录,文件传输或执行命令的协议。它通过加密通信的方式,保护了用户的身份验证信息和数据传输,防止被中间人攻击或窃听。

2. 如何使用SSH?

2.1 先看看本地是否已经创建过ssh密钥

键入命令: ls -al ~/.ssh ( 查看用户根目录下的 .ssh 文件夹中的内容), 是否包含以下中的一种:

id_rsa.pub
id_ecdsa.pub
id_ed25519.pub

如果存在任意一个,则说明已经创建过密钥,你可以删除重新创建,也可以将文件中的内容( 其实就是公钥 ) 直接复制到Github的SSH Key中, 如果该密钥没有密码,你就可以直接使用。

2.2 自己创建一个SSH的密钥对

键入密令:ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
在这里插入图片描述

命令执行后,在 ~/.ssh/目录下将生成 id_rasid_ras.pub 两个文件, 其中id_ras.pub的内容就是密钥中的公钥

如果你的系统包含了新算法,也可以使用 ssh-keygen -t ed25519 -C "your_email@example.com" , 这将生成 id_ed25519.pub

2.3 将生成的公钥内容放置在Github上

登录你的Github账号, 点击 头像 -> Settings -> SSH and GPG keys -> new SSH key 执行创建
在这里插入图片描述

2.4 测试是否可用

  • 选取你的Github上的任意项目,复制其SSH项目链接
  • 本地开启命令行窗口 ,键入命令 git clone git@github.com:username/ProductName.git, 如果拉取成功,则说明配置完成!
  • 如果在2.2步骤中,创建密钥时设置了密码,则每次拉取项目时,需要输入密钥的密码才可以

3. SSH代理,管理密钥的密码

如果你在创建密钥时设置了密码,又不想每次拉取工程时都进行密码输入,可以将密码交由SSH的代理 ssh-agent来管理。

3.1 ssh-agent如何管理密钥?

第一步
打开命令行窗口,键入 eval "$(ssh-agent -s)"
该命令用于启动 SSH 代理,并将相关的环境变量设置在当前 shell 会话中,以便于后续的密钥管理

第二步
键入 ssh-add -K ~/.ssh/id_rsa
将SSH的私钥添加进SSH代理中 ,首次添加时需要输入 设置的密钥的密码

后续在此命令行窗口中,再去拉取代码时,将不需要再输入密钥的密码了

3.2 如果我重新开启一个命令行窗口, 则需要再次执行上述流程,如果简化?

将下述命令直接添加进入 ~/.zshrc 中,这样每次打开命令行窗口时,这两行命令都将先执行,也就不再需要手动输入了

eval "$(ssh-agent -s)"
ssh-add -K ~/.ssh/id_rsa

id_rsa 如果和你的命名不同,需要替换为你的密钥文件的名称


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/419603.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python实现时间序列分析动态因子模型(DynamicFactor算法)项目实战

说明:这是一个机器学习实战项目(附带数据代码文档视频讲解),如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 动态因子模型(Dynamic Factor Models, DFM)是一种统计学和计量经济学中用于处理…

算法项目外包的收费方式

针对算法研究性项目的收费方式和注意事项,这取决于项目的具体性质、规模和所涉及的技术领域。以下是一些常见的收费方式和需要注意的问题,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 收…

Spring Exception 常见错误

今天,来学习 Spring 的异常处理机制。Spring 提供了一套健全的异常处理框架,以便我们在开发应用的时候对异常进行处理。但是,我们也会在使用的时候遇到一些麻烦,接下来我将通过两个典型的错误案例,带着你结合源码进行深…

WEB漏洞 SSRF简单入门实践

一、漏洞原理 SSRF 服务端请求伪造 原理:在某些网站中提供了从其他服务器获取数据的功能,攻击者能通过构造恶意的URL参数,恶意利用后可作为代理攻击远程或本地的服务器。 二、SSRF的利用 1.对目标外网、内网进行端口扫描。 2.攻击内网或本地的…

Selenium自动化落地实践

01、自动化测试流程图 02、主要过程描述 1、自动化测试的切入点 开展自动化测试的时间点很关键,需要在系统已经过多版本的系统测试,达到稳定之后。 2、可行性分析 在进行项目自动化测试之前,第一步就是要确认其可行性,是否可以…

物联网与智慧城市的融合:构建智能化、便捷化、绿色化的城市未来

一、引言 随着科技的飞速发展和城市化的不断推进,物联网技术正逐步渗透到城市的各个领域,成为推动智慧城市建设的核心力量。物联网与智慧城市的融合,不仅为城市治理提供了高效、智能的解决方案,也为市民的生活带来了前所未有的便…

canvas坐标系统 webgl坐标系统 uv纹理坐标系统 原点

一、canvas原点在左上角,x轴正方向向右,y轴正方向向下,一个点对应一个像素 二、webgl原点在正中间,x轴正方向向右,y轴正方向向上,数据显示范围在[-1,1]之间,超过此范围不显示数据 三、uv原点在左…

【wpf】关于绑定的一点明悟

背景简介 软件功能为,读取一个文件夹下的所有子文件夹,每个文件夹对自动对应生成 一组 “按键四个勾选” 按键点击触发,可以发送与其对应文件夹中的一些内容。这个绑定的过程我在之前的文章有过详细的介绍,非常的简单。 这里回顾…

白话大模型② | 如何提升AI分析的准确性?

白话大模型系列共六篇文章,将通俗易懂的解读大模型相关的专业术语。本文为第二篇:如何提升AI分析的准确性? 作者:星环科技 人工智能产品部 面对AI分析落地时的数量化、准确性、泛化性等问题,让我们稍微深入了解下当前…

【Linux C | 网络编程】getaddrinfo 函数详解及C语言例子

😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C、数据结构、音视频🍭 🤣本文内容🤣&a…

Redis冲冲冲——事务支持,AOF和RDB持久化

目录 引出Redis事务支持,AOF和RDB持久化1、Redis的事务支持2、Redis的持久化 Redis冲冲冲——缓存三兄弟:缓存击穿、穿透、雪崩缓存击穿缓存穿透缓存雪崩 总结 引出 Redis冲冲冲——事务支持,AOF和RDB持久化 Redis事务支持,AOF和…

Find My扫地机器人|苹果Find My技术与机器人结合,智能防丢,全球定位

扫地机器人又称自动打扫机、智能吸尘、机器人吸尘器等,是智能家电的一种,能凭借人工智能,自动在房间内完成地板清理工作。一般采用刷扫和真空方式,将地面杂物先吸纳进入自身的垃圾收纳盒,从而完成地面清理的功能。现今…

LabVIEW和Python开发微细车削控制系统

LabVIEW和Python开发微细车削控制系统 为满足现代精密加工的需求,开发了一套基于LabVIEW和Python的微细车削控制系统。该系统通过模块化设计,实现了高精度的加工控制和G代码的自动生成,有效提高了微细车削加工的自动化水平和编程效率。 项目…

C 嵌入式系统设计模式 16:循环执行模式

本书的原著为:《Design Patterns for Embedded Systems in C ——An Embedded Software Engineering Toolkit 》,讲解的是嵌入式系统设计模式,是一本不可多得的好书。 本系列描述我对书中内容的理解。本文章描述嵌入式并发和资源管理模式之二…

mybatis-plus逆向自动生成代码总结记录

使用mybatis-plus&#xff08;mp&#xff09;自动生成各个层的代码&#xff0c;减轻开发工作&#xff0c;不过现在用mybatis-flex的越来越多,综合性能更好。 1.pom文件简要 <dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boo…

初学Vue总结

0 Vue概述 问题&#xff1a;我们已经学过了htmlCssjavascript,可以开发前端页面了&#xff0c;但会发现&#xff0c;效率太低了。那么&#xff0c;有没有什么工具可以提高我们的开发效率&#xff0c;加快开发速度呢&#xff1f; 他来了&#xff0c;他来了&#xff0c;他大佬似…

光耦合器在电路板上的作用

在不断创新的电子世界中&#xff0c;一个关键组件在确保电子设备无缝运行方面默默地发挥着至关重要的作用&#xff1a;光耦合器。光耦合器经常被普通消费者忽视&#xff0c;它是电路板上的无名英雄&#xff0c;在维护电子系统的完整性和安全性方面发挥着关键作用。 什么是光耦合…

ventoy制作启动U盘

Ventoy新一代多系统启动U盘解决方案。国产开源U盘启动制作工具&#xff0c;支持Legacy BIOS和UEFI模式&#xff0c;理论上几乎支持任何ISO镜像文件&#xff0c;支持加载多个不同类型的ISO文件启动&#xff0c;无需反复地格式化U盘。把ISO系统文件拷贝到U盘&#xff0c;U盘插入电…

Springboot 3.0

一、Springboot3.0介绍 1.1、 Springboot3.0概述 在2022 年 11 月 24 日Spring Boot 3.0 现已正式发布&#xff0c;它包含了 12 个月以来 151 个开发者的 5700 多次代码提交。这是自 4.5 年前发布 2.0 以来&#xff0c;Spring Boot 的第一次重大修订。 它也是第一个支持 Spr…

化是渐化,变是顿变:一窥 OpenAI Sora 相关技术的演进

编者按&#xff1a; 近期&#xff0c;OpenAI 发布通用视觉大模型 Sora &#xff0c;这也是继文本模型ChatGPT和图片模型Dall-E之后&#xff0c;又一极具颠覆性的大模型产品&#xff0c;人们重新思考了生成式 AI 在视觉内容创作领域的应用前景&#xff0c;内容创作工作流有望被颠…