Github添加SSH key时的问题

在尝试将本地SSH Key添加到Github时遇到问题,由于vim在Linux下认为没有 的文本不合法,而Windows认为每行文本不需要末尾的 。解决方案是使用cat命令将SSH Key文件内容输出到屏幕,然后复制并成功添加到Github。

*这是一个小细节。。记录下来。。→_→*

  • 问题现象

在此处Key部分添加SSH key

添加SSH key'

需要将用户本地的如下所示文件中的内容复制到Key部分

~/.ssh/id_rsa.pub

这时问题来了,通过vim打开此文件,复制内容到Key部分进行add,但添加失败,出现如下信息

无效的key

  • 问题原因

vim 遵循的是 Linux 的定义,结尾没有 \n 的文本文件不是一个合法的文本文件,因此默认加上了\n
windows 认为 \n 是文本行之间的「分隔符」, 所以只有两行之间才需要 \n,一行文本不需要 \n。windows

### 如何在Mac操作系统中生成SSH密钥并将它添加GitHub账户 #### 检查现有SSH密钥 在Mac上,可以先检查是否已存在SSH密钥。这可以通过访问`~/.ssh/`目录来完成。如果该文件夹下不存在名为`id_rsa.pub`或`id_ecdsa.pub`等类似的公钥文件,则需要生成一个新的SSH密钥[^1]。 运行以下命令以查看是否存在现有的SSH密钥: ```bash ls ~/.ssh ``` 如果有发现`.pub`结尾的文件(如`id_rsa.pub`),则表示已有配置好的SSH密钥;如果没有找到任何`.pub`文件,则需继续下一步创建新密钥。 #### 创建新的SSH密钥 为了生成一个新的SSH密钥,在终端输入如下命令,并按照提示操作: ```bash ssh-keygen -t rsa -b 4096 -C "your_email@example.com" ``` 此命令会生成一个基于RSA算法的新密钥对,其中 `-C` 参数用于指定与之关联的电子邮件地址作为标签以便识别[^2]。 当被询问保存位置,默认路径通常是 `~/.ssh/id_rsa` ,可以直接按回车接受默认设置。接着会被要求设定密码保护私钥的安全性,这是可选但推荐的做法。 完成后会在用户的 `.ssh` 文件夹里看到两个新文件:一个是私钥 (`id_rsa`) 和另一个对应的公钥(`id_rsa.pub`) . #### 添加公钥至GitHub账号 登录到自己的GitHub账户后,导航至个人资料页面中的 **Settings**(设置)[^3] 。左侧菜单栏选择 **SSH and GPG keys**, 然后再点击右上方按钮 **New SSH key** 来新增一条记录[^4]。 在此界面填写表单内容,“Title”字段应描述这个key来自哪台设备或者用途(比如:"My MacBook Pro")。“Key”部分复制之前生成的那个public key的内容进去即可。可以从本地读取并粘贴过来: ```bash cat ~/.ssh/id_rsa.pub ``` 最后提交更改即完成了添加过程。 #### 测试连接有效性 执行下面这条指令用来测试刚刚上传上去的SSH Key 是否生效正常工作: ```bash ssh -T git@github.com ``` 成功的话应该收到类似这样的消息:“Hi username! You've successfully authenticated...”。这意味着现在能够利用SSH协议安全地同GitHub交互而无需每次都提供用户名和密码了。 ---
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值