Github配置SSH Key(新手友好版)

✅博客主页:爆打维c-CSDN博客​​​​​​ 🐾

✅Github主页: https://github.com/lyy-0118🐾

GitHub 配置 SSH,主要是为了让你的电脑和 GitHub 安全地"免密码通信"。我们在往github上push项目的时候,如果走https的方式,每次都需要输入账号密码,非常麻烦。而采用ssh的方式,就不再需要输入,只需要在github自己账号下配置一个ssh key即可。

一、SSH 是什么?

1.SSH的用处

  • 安全加密的通信协议
  • 用来让两台机器之间安全连接
  • 常用于身份认证

2.在 GitHub 的场景里,SSH 主要用来做两件事:

  • 证明你是谁
  • 安全地传输代码

3.配置 SSH 的好处

配置了 SSH后:

  • 不用每次输用户名/token
  • 认证更方便
  • 连接是加密的
  • 推送代码更顺手

二、SSH 是怎么工作的?

SSH 认证一般使用一对密钥:

  • 公钥:可以给别人
  • 私钥:只能自己保存,不能泄露

流程大概是:

  1. 在自己电脑上生成一对 SSH 密钥
  2. 公钥 上传到 GitHub
  3. 私钥留在你电脑里
  4. 当你连接 GitHub 时,GitHub会根据这对密钥确认

三、配置SSH

git使用SSH配置, 初始需要以下三个步骤

  1. 使用秘钥生成工具生成rsa秘钥和公钥
  2. 将rsa公钥添加到代码托管平台
  3. 将rsa秘钥添加到ssh-agent中,为ssh client指定使用的秘钥文件

第一步:检查本地主机是否已经存在ssh key

Windows 一般在:C:\Users\你的用户名\.ssh\

看里面有没有这些文件:

  • id_rsa / id_rsa.pub
  • id_ed25519 / id_ed25519.pub

如果有 .pub 文件,说明你已经有公钥。

或执行以下命令查看:

bash 复制代码
cd ~/.ssh
ls
//看是否存在 id_rsa 和 id_rsa.pub文件,如果存在,说明已经有SSH Key

如下图所示,则表明已经存在,如果存在,直接跳到第三步

第二步:生成ssh key

如果不存在ssh key,使用如下命令生成

在 Bash 执行:

bash 复制代码
ssh-keygen -t ed25519 -C "你的邮箱"

执行后一路回车即可

第三步:获取ssh key公钥内容

在 Bash 执行:

bash 复制代码
cat ~/.ssh/id_ed25519.pub

如下图所示,复制该内容

第四步:在Github账号上添加公钥

把上面复制的内容添加到 Git 服务器账户里:

  • GitLab: Preferences / SSH Keys
  • GitHub: Settings / SSH and GPG keys

添加ssh key,把刚才复制的内容粘贴上去保存即可

第五步:验证是否设置成功

bash 复制代码
ssh -T git@github.com

显示如下信息表明设置成功,恭喜你!*★,°*:.☆( ̄▽ ̄)/$:*.°★* 。

设置成功后,即可不需要账号密码clone和push代码,可以用ssh克隆别人的仓库啦

参考文章:Github配置ssh key的步骤(大白话+包含原理解释)_github生成ssh key-CSDN博客

相关推荐
老虎06273 小时前
Netty[ NIO 核心速成 ] ---- NIO三大组件(Channel & Buffer&selector)
java·github·nio
屑曦晨4 小时前
创建签名密钥库和配置CICD签名
github
chalmers_154 小时前
封禁暴力破解SSH的攻击IP
linux·服务器·ssh
成都极云科技4 小时前
2026年服务器托管收费标准解析 性价比对比及边缘节点选型全指南
运维·服务器·github
CoderJia程序员甲5 小时前
GitHub 热榜项目 - 日榜(2026-03-17)
人工智能·ai·大模型·github·ai教程
NGC_66115 小时前
cookie、session、token详解
github
汪海游龙5 小时前
03.18 AI 精选:Java 26 正式发布,带来新特性与平台演进
github·hacker news
x-cmd6 小时前
RTK - CLI 代理工具,减少 LLM 80% token 消耗 | X-CMD 推荐
人工智能·ai·github·agent·token·rtk·x-cmd
badhope6 小时前
Python、C、Java 终极对决!谁主沉浮?谁将消亡?
java·c语言·开发语言·javascript·人工智能·python·github