ssh 配置

news2024/11/18 3:48:01

ssh 配置

在管理Git项目上,很多时候都是直接使用 https url 克隆到本地,当然也有有些人使用 SSH url 克隆到本地。

这两种方式的主要区别在于:使用 https url 克隆对初学者来说会比较方便,复制 https url 然后到 git Bash 里面直接用 clone 命令克隆到本地就好了,但是每次 fetch 和 push 代码都需要输入账号和密码,这也是 https 方式的麻烦之处(当然现在已经可以把账号信息保存下来,不需要每次都输入,不过本文暂时不介绍这个)。

而使用 SSH url 克隆却需要在克隆之前先添加和配置好 SSH key,因此,如果我们想要使用 SSH url 克隆的话,我们必须是这个项目的拥有者。否则我们是无法添加 SSH key 的,另外 ssh 默认是每次 fetch 和 push 代码都不需要输入账号和密码,如果我们想要每次都输入账号密码才能进行 fetch 和 push 也可以另外进行设置。

本文主要是讲述如何配置和使用 ssh 方式来提交和克隆代码。

如果我们没有配置 ssh,我们并不能 clone 远程仓库。

在这里插入图片描述

配置账号信息

git config user.name <name>

git config user.email <email>

生成 ssh 公钥密钥

ssh-keygen -t rsa -C <email>

在这里插入图片描述

之后可以在对应的文件夹下看到生成的 ssh 配置文件:

在这里插入图片描述

  • id_rsa:是秘钥,是本机的秘钥
  • id_rsa.pub:是公钥,是需要在 GitHub 账户上面配置的

在 GitHub 上配置

登录 GitHub,点击右上角的头像:

在这里插入图片描述

点击侧边栏中的 SSH and GPG keys,

在这里插入图片描述

后点击绿色的 New SSH key 按钮进行配置,把上面生成的 id_rsa.pub 的文件内容复制粘贴到 key 里:

在这里插入图片描述

点击添加后就可以在列表中看到配置好的key,这时候就可以执行 clone 命令了。

在这里插入图片描述

在不同电脑上使用同一个账号也需要重新生成 key 并在 github 上配置。

配置多个 GitHub 账号

github使用SSH与客户端连接。如果是单用户(first),生成密钥对后,将公钥保存至github,
每次连接时SSH客户端发送本地私钥(默认~/.ssh/id_rsa)到服务端验证。

单用户情况下,连接的服务器上保存的公钥和发送的私钥自然是配对的。但如果是多个用户呢?

同样对于不同的账号,我们仍需要先执行 ssh-keygen -t rsa -C <email> 命令生成 ssh key,不过这时候就需要注意要修改生成的文件名了,不然会覆盖之前的。

在这里插入图片描述

注意这个路径,如果是相对路径,那么就会在相对于当前的目录下生成这个key文件。

将生成的 PUB 文件同样配置到 github 中,然后在 .ssh 文件夹中新建一个 config 文件。

在这里插入图片描述

在 config 文件中配置不同的账号信息:

比如:

Host github.com
HostName github.com
User git
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa

Host github.com1
HostName github.com
User git
PreferredAuthentications publickey
IdentityFile ~/.ssh/test
  • Host 后面的名字是别名,对应不同的账号
  • 其中 HostName 是 git 的域名,文章以 GitHub 为例,因此 HostName 是 github.com。
  • User 都是 git
  • PreferredAuthentications 照抄即可
  • IdentityFile 就是存放密钥文件的位置

配置完成后需要测试一下 ssh 链接:

分别执行 ssh -T git@github.comssh -T git@github.com1 能否成功访问 GitHub.

在这里插入图片描述

之后如果我们要切换账户的就需要在 clone 或者 push 前修改 ssh url:

比如说 account1 对应了上面的 Host github.com,account2 对应了上面的 Host github.com1,从 account1 切换到 account2 的话就需要把 git@github.com 改成 git@github.com1 (通过 git remote set-url <repoName> <url> 命令更改,或者手动在 .git/config 文件里改)

注意: GitHub根据配置文件的 user.email 来获取 GitHub 帐号显示 author 信息, 所以对于多帐号用户一定要记得将 user.email 改为相应的 email(account2@mail.com)

地址

文章仓库地址:https://github.com/leopord-lau/easy-git

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

纯html+js+css个人博客

首页 <!DOCTYPE HTML> <html> <head> <title>博客</title> <meta http-equiv"Content-Type" content"text/html; charsetutf-8" /> <meta name"viewport" content"widthdevice-width, initial-sca…

E. Vlad and a Pair of Numbers(位运算)

思路&#xff1a;如果x在这一位是1&#xff0c;说明a,b在这一位一个是1一个是0&#xff0c;我们默认a为1&#xff0c;b为0.. 对于n的一些位为0&#xff0c;那么a&#xff0c;b在这一位肯定相同。我们想&#xff0c;如果a和b的和右移一位与x相同&#xff0c;所以1的位置是相同的…

按照模板生成文件,Word 或者 Excel

需求流程&#xff1a; 模板部分如图&#xff1a; Web端技术选用Jfinal 功能实现&#xff1a; 下面代码是调用 --“外部接口”--传参&#xff0c;将前端选中的信息传给后端&#xff0c; 另外将后端返回的文件流下载成文件 package ibasic.web.com.controller;import java.io.Bu…

链表--114. 二叉树展开为链表/medium 理解度C

114. 二叉树展开为链表 1、题目2、题目分析3、复杂度最优解代码示例4、适用场景 1、题目 给你二叉树的根结点 root &#xff0c;请你将它展开为一个单链表&#xff1a; 展开后的单链表应该同样使用 TreeNode &#xff0c;其中 right 子指针指向链表中下一个结点&#xff0c;而…

ChatGPT更新了Mention功能,集结若干GPTs作战,AI智能体的心智入口;向量数据库的挑战和未来

&#x1f989; AI新闻 &#x1f680; ChatGPT更新了Mention功能&#xff0c;集结若干GPTs作战&#xff0c;AI智能体的心智入口 摘要&#xff1a;OpenAI在ChatGPT中引入了一个新功能&#xff0c;允许用户在聊天时任意一个GPTs&#xff08;即ChatGPT最新推出的AI Agent 智能应用…

Java 对部分接口返回数据进行加密,或其他处理

业务场景&#xff1a;后端项目中分为PC端和移动端接口&#xff0c;移动端为例如 mobile 开头的URl&#xff0c;需求为调用移动端接口时&#xff0c;对返回数据进行加密&#xff0c;PC端不加密 import cn.hutool.core.date.DatePattern; import cn.hutool.json.JSONConfig; impo…

HiveSQL题——排序函数(row_number/rank/dense_rank)

一、窗口函数的知识点 1.1 窗户函数的定义 窗口函数可以拆分为【窗口函数】。窗口函数官网指路&#xff1a; LanguageManual WindowingAndAnalytics - Apache Hive - Apache Software Foundationhttps://cwiki.apache.org/confluence/display/Hive/LanguageManual%20Windowin…

力扣题集(第一弹)

一日练,一日功;一日不练十日空。 学编程离不开刷题&#xff0c;接下来让我们来看几个力扣上的题目。 1. 242. 有效的字母异位词 题目描述 给定两个字符串 s 和 t &#xff0c;编写一个函数来判断 t 是否是 s 的字母异位词。 注意&#xff1a;若 s 和 t 中每个字符出现的次数…

粒子群算法求解港口泊位调度问题(MATLAB代码)

粒子群算法&#xff08;Particle Swarm Optimization&#xff0c;PSO&#xff09;是一种基于群体智能的优化算法&#xff0c;它通过模拟鸟群或鱼群的行为来寻找最优解。在泊位调度问题中&#xff0c;目标是最小化所有船只在港时间的总和&#xff0c;而PSO算法可以帮助我们找到一…

07. STP的基本配置

文章目录 一. 初识STP1.1. STP概述1.2. STP的出现1.3. STP的作用1.4. STP的专业术语1.5. BPDU的报文格式1.6. STP的选择原则&#xff08;1&#xff09;选择根桥网桥原则&#xff08;2&#xff09;选择根端口原则 1.7. 端口状态1.8. STP报文类型1.9. STP的收敛时间 二. 实验专题…

如何获得《幻兽帕鲁》隐藏帕鲁唤夜兽?13000个配种配方查询 幻兽帕鲁Steam好评率还在涨 Mac苹果电脑玩幻兽帕鲁 Crossover玩Windows游戏

《幻兽帕鲁》是一款Steam平台热门游戏&#xff0c;开放式大陆和养成式冒险结合&#xff0c;成为2024首款热门游戏&#xff0c;不过由于官方仅发布了Windows版的游戏客户端&#xff0c;Mac用户无法直接玩&#xff0c;好在有Crossover这样的神器&#xff0c;让苹果电脑也能玩上《…

U-Boot学习(6):初始化之_main函数源码分析

在上一节系统初始化之start.S源码分析详解中&#xff0c;我们分析了上电后的代码执行流程&#xff0c;实际上就是对系统特权模式、CP15、向量表等进行配置。最后一步就是进入_main函数了&#xff0c;这个就是U-Boot的主程序了&#xff0c;它完成了对系统内存、堆栈、全局结构体…

非常好用的高效率截图工具-Snipaste

官网:https://zh.snipaste.com/ 帮助文档: https://docs.snipaste.com/zh-cn/

已实现:vue、h5项目如何使用echarts实现雷达图、六边形图表

说实话&#xff0c;要说图表里&#xff0c;最强的应该属于echarts了&#xff0c;不管是接入难度上&#xff0c;还是样式多样性上&#xff0c;还有社区庞大程度上&#xff0c;都是首屈一指的&#xff0c;反观有的人习惯用chart.js了&#xff0c;这个无可厚非&#xff0c;但是如果…

Glide完全解读

一&#xff0c;概述 glide作为android流行的图片加载框架&#xff0c;笔者认为有必要对此完全解读。glide提供了三级缓存、生命周期Destroy后自动移除缓存、自动适配ImageView&#xff0c;以及提供了各种对图片修饰的操作&#xff0c;如剪裁等。本文通过最简单的使用&#xff…

Vim实战:使用 Vim实现图像分类任务(二)

文章目录 训练部分导入项目使用的库设置随机因子设置全局参数图像预处理与增强读取数据设置Loss设置模型设置优化器和学习率调整策略设置混合精度&#xff0c;DP多卡&#xff0c;EMA定义训练和验证函数训练函数验证函数调用训练和验证方法 运行以及结果查看测试完整的代码 在上…

光学3D表面轮廓仪服务超精密抛光技术发展

随着技术的不断进步&#xff0c;精密制造领域对材料表面的处理要求越来越高&#xff0c;超精密抛光技术作为当下表面处理的尖端技术&#xff0c;对各种高精密产品的生产起到了至关重要的作用&#xff0c;已广泛应用于集成电路制造、医疗器械、航空航天、3C电子、汽车、精密模具…

Django知识随笔

目录 1.如何再ajax中传输post数据&#xff1f; 2.在form表单中使用jquery序列化&#xff0c;input框过多。 1.如何再ajax中传输post数据&#xff1f; 在ajax传递的那个网址&#xff0c;会调用你路由的视图函数&#xff0c;在视图函数上面加一句 csrf_exempt 。写上之后会有提…

Docker私有仓库搭建

目录 搭建本地私有仓库 Docker--harbor私有仓库部署与管理 Harbor 简介 什么是Harbor Harbor的特性 Harbor的构成 Harbor 部署 部署 Docker-Compose 服务 ​编辑部署 Harbor 服务 启动 Harbor 进入浏览器http://192.168.20.10进入harbor的客户端 搭建本地私有仓库 …

Shell中sed编辑器

1.简介 sed是一种流编辑器&#xff0c;流编辑器会在编辑器处理数据之前基于预先提供的一组规则来编辑数据流。 sed编辑器可以根据命令来处理数据流中的数据&#xff0c;这些命令要么从命令行中输入&#xff0c;要么存储在一个 命令文本文件中。 2.sed编辑器的工作流程 sed…