检查 OpenSSH 客户端
Windows 11 系统通常自带 OpenSSH 客户端
检查它是否已安装,cmd 输入
ssh -V

如果没有安装
我的电脑是 Windows 11
打开设置,找到【系统 > 可选功能】,然后安装 OpenSSH 就可以了


生成 SSH 密钥对
随便在什么地方,打开 GitBash,我在桌面打开
记得把邮箱换成你自己的
ssh-keygen -t ed25519 -C "snow@example.com"
**ssh-keygen:**这是 OpenSSH 套件中的密钥生成器工具(Key Generator)。它的作用是生成一对"钥匙"
-t 代表 Type(类型)
ed25519是目前最推荐的非对称加密算法。相比老旧的 RSA,它生成的密钥体积更小,生成和验证速度更快,安全性极高
-C代表 Comment(注释/标签)
这后面的邮箱地址其实不参与加密,它只是写在公钥末尾的一个"标签"。当你服务器上有几十个公钥时,这个标签能让你一眼看出:这个 Key 是属于张三的电脑
三个问题
输入完命令回车后,系统会问你三个问题
- Enter file in which to save the key
要把钥匙存在哪?直接按回车
默认路径是【C:\Users\86195\.ssh\id_ed25519】
- Enter passphrase for
给私钥再加一把"密码锁"。不需要密码,直接按回车
如果设置了密码,每次 git push 你都得输这个密码
- Enter same passphrase again
直接按回车
成功生成
看到这个界面,说明已经成功生成了 SSH 密钥对

- The key fingerprint is
这是公钥的指纹
公钥文件(.pub 文件)里是一长串乱码,人类很难肉眼比对
系统把 id_ed25519.pub(公钥文件)里那一长串字符,通过 SHA256 算法进行哈希计算,得出这个短字符串,是一个简短的摘要
- The key's randomart image is
这是指纹的可视化图像(Randomart)
人类对"图片"的记忆和比对能力远强于"字符串"
如果下次生成了新的公钥,这个图就会变化
这个图欣赏一下就行,不用管它
在 GitCode 平台添加公钥
id_ed25519:私钥(Private Key)。不能给别人看
id_ed25519.pub:公钥(Public Key)。这个是要给 GitCode 看的
复制公钥
可以打开文件手动复制

也可以在 GitBash 中使用命令
cat ~/.ssh/id_ed25519.pub | clip
|: 管道符号,把左边命令的输出结果,丢给右边的命令处理
**clip:**Windows 的剪贴板工具
命令的意思:读取公钥文件的内容,并直接复制到你的剪贴板中
打开 GitCode
粘贴公钥后,会自动识别公钥名称,就是之前生成密钥对时 Comment 的内容

验证连接
在 GitBash 中输入
ssh -T git@gitcode.com
-T 解释:
SSH 默认是用来远程登录服务器敲命令的(也就是要把你变成终端)
但 GitCode 为了安全,不允许用户通过 SSH 登录进他们的服务器后台去乱搞
-T 就是告诉服务器:我只是来测试连接或者传数据的,不需要给我分配一个 Shell 终端
