MacOS 配置github密钥

ops/2024/11/30 11:41:09/

MacOS 配置github密钥

1. 生成GitHub的SSH密钥对

 ssh-keygen -t ed25519 -C "xxx@xxxx.com" -f ~/.ssh/id_ed25519_github

其中

  • xxxxxxxx@xxx.com 是注册github、gitee和gitlab的绑定账号的邮箱

  • -t ed25519:生成密钥的算法为ed25519(ed25519比rsa速度快,也是gitee默认推荐算法

  • -C "你的箱":表示以这个邮箱生成ed25519算法密钥

  • --f ~/.ssh/id_ed25519_github:表示生成的私钥和公钥的指定路径和文件名

一路回车默认生成公钥和私钥

image-20241129232117134

2. 查看生成的SSH密钥对(公钥和私钥)

2.1 查看私钥

 cat ~/.ssh/id_ed25519_github

image-20241129231800559

2.2 查看公钥

 cat ~/.ssh/id_ed25519_github.pub

image-20241129231915786

带有.pub的是公钥,不带的是私钥。其中公钥是自己可以存放到其他需要和自己电脑通信的服务器上,私钥是不能泄露的。

3. 添加公钥到 GitHub、Gitee和Gitlab(带有 .pub 的文件是公钥,没带的是私钥)

3.1 Github添加公钥,用文本编辑器打开 id_ed25519_github.pub,把里面内容全部复制到 github账户头像settings(设置) 下面的 SSH and GPG keys(SSH and GPG 密钥) 密钥操作区域,如下图所示:

image-20241129232415330

添加完之后可以看到这样提示添加成功的字样。

image-20241129232520956

4. 测试链接

用下面这行命令来测试是否可以链接成功

 ssh -T git@github.com

image-20241129232949532

结果遇到提示了这样的,表示SSH 密钥没有正确设置或没有被 GitHub 识别

 git@github.com: Permission denied (publickey).

解决办法:

4.1 确保 SSH Agent 正在运行并加载了密钥

Git 使用 SSH agent 来管理你的密钥。你需要确保 SSH agent 正在运行并且已经加载了你的私钥。以下是如何检查和加载密钥的方法:

  • 启动 SSH agent(如果还没启动):

     eval "$(ssh-agent -s)"

  • 将你的私钥添加到 agent:

     ssh-add ~/.ssh/id_ed25519_github

    如果出现 Could not open a connection to your authentication agent 错误,可以在启动 SSH agent 后重新运行上述命令。

image-20241129233403565

4.2 确认 SSH 密钥已与 GitHub 账户关联

确保你的公钥(~/.ssh/id_ed25519_github.pub)已正确添加到 GitHub 账户中。以下是如何确认:

  • 在 GitHub 上检查公钥:

    • 进入 GitHub SSH 设置。

    • 确保你复制的公钥内容已列在 GitHub 上。如果没有,请重新添加,复制公钥内容并粘贴到 "Key" 字段。

4.3 确认密钥对正确

确保你使用的 SSH 公钥和私钥是正确的:

  • 你的 私钥 应该是 ~/.ssh/id_ed25519_github

  • 你的 公钥 应该是 ~/.ssh/id_ed25519_github.pub

4.4 测试与 GitHub 的 SSH 连接

你可以通过以下命令测试 SSH 配置是否工作正常:

 ssh -T git@github.com

如果一切正常,你应该看到如下消息:

 Hi <用户名>! You've successfully authenticated, but GitHub does not provide shell access.

image-20241129233430272

如果上述配置遇到问题可以参考下面这种生成密钥的方式去做

生成密钥

ssh-keygen -t rsa -C "xxxx@xxx.com"

然后一路回车生成对应的密钥对,把生成的公钥复制到githubssh配置里。

查看公钥

cat ~/.ssh/id_rsa.pub

复制公钥信息粘贴到github的SSH

最后来检测链接

ssh -T git@github.com

参考文章:

MacOS 同时配置github、gitee和gitlab密钥 - CoderManolin - 博客园


http://www.ppmy.cn/ops/137912.html

相关文章

【计算视觉算法与应用】金字塔,下采样Gaussian Pyramid. 上采用 Laplacian Pyramid (code: py)

金字塔&#xff08;Pyramid&#xff09;在图像处理中主要用于多尺度分析和图像压缩。常见的图像金字塔有两种&#xff1a; 高斯金字塔&#xff08;Gaussian Pyramid&#xff09;&#xff1a;用于下采样图像&#xff0c;生成分辨率逐渐降低的图像序列。拉普拉斯金字塔&#xff…

攻防世界GFSJ1193 cat_theory

题目编号&#xff1a;GFSJ1193 附件下载后是一个jpg文件和一个sage文件&#xff08;python&#xff09;&#xff1a; 1. 分析图片&#xff08;.jpg文件&#xff09; 这个交换图展示的是一个加密系统的 同态加密 性质&#xff0c;其核心思想是&#xff1a;加密前的操作与加密后…

2017 NHOI小学(C++)

A. 吃西瓜&#xff08;2017 NHOI小学 1&#xff09; 问题描述: 炎热的夏天来的可真快&#xff0c;小花猫和编程兔决定去买一个又大又甜的西瓜。可是小花和编程兔是两只非常奇怪的动物&#xff0c;都是偶数的爱好者&#xff0c;它们希望把西瓜切成两半后&#xff0c;每一部分的…

Vue 3 的双向绑定原理

Vue 3 的双向绑定原理是基于 响应式系统 和 数据劫持 技术来实现的。在 Vue 3 中&#xff0c;双向绑定通常是通过 v-model 指令来完成的&#xff0c;它本质上是数据的双向同步&#xff1a;当数据改变时&#xff0c;视图自动更新&#xff0c;反之&#xff0c;视图的修改也会更新…

小程序 - 婚礼邀请函

小程序页面和样式练习 - 婚礼邀请函小程序开发笔记 目录 婚礼邀请函 准备工作 加载静态资源 项目初始化 标签栏的配置 各页面导航栏标题配置 全局导航栏样式配置 公共样式的编写 项目内容 邀请函页面内容 邀请函页面样式 照片页面内容 照片墙页面样式 美好时光页…

Ubuntu桥接模式设置静态IP

目录 关于 NAT VS 桥接 为桥接模式配置静态IP 编辑虚拟机设置 虚拟网络编辑器 选择要桥接的网络适配器 固定桥接该网络适配器 确定静态IP与网关 虚拟机内更改 桌面可直接更改设置 非桌面版可以更改配置文件 关于Windows网络适配器&#xff08;可以改&#xff09;…

信创改造 - Redis -》TongRDS 安装方式之单节点模式安装

安装前准备 安装 JDK 参考链接&#xff1a;安装 JDK 8【Linux】 语雀 创建用户 # 用户名可以自己起 useradd rds 上传安装包到服务器 单节点模式是由两个部署单元组成&#xff1a;1 个RDS 服务节点&#xff0c;1 个 RDS 中心节点。 上传到 /home/rds 用户文件夹&#xff0…

解析类的泛型参数 Spring之GenericTypeResolver.resolveTypeArgument

GenericTypeResolver 是 Spring 的一个实用类&#xff0c;提供了在运行时解析泛型类型信息的能力。它包含了若干静态方法&#xff0c;可以用于解析类的泛型参数。GenericTypeResolver.resolveTypeArgument 方法可以用于解析一个具体类实现指定的泛型接口时&#xff0c;实际的泛…