当你收到“Key is invalid. You must supply a key in OpenSSH public key format”这个错误时,通常是因为你尝试在 GitHub 上添加的 SSH 密钥格式不正确。请确保你的密钥符合 OpenSSH 公钥格式。以下是解决步骤:
1. 生成新的 SSH 密钥
如果你还没有 SSH 密钥或当前密钥不正确,可以通过以下命令生成一个新的 SSH 密钥:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
- 按照提示,选择默认路径(通常为
~/.ssh/id_rsa
),也可以选择其他路径。 - 如果需要,输入一个密码来保护私钥。
2. 查看公钥内容
生成密钥后,你可以使用下面的命令查看公钥的内容:
cat ~/.ssh/id_rsa.pub
确保输出的内容是以 ssh-rsa
开头,并且包含一串字符。这就是你的公钥。
3. 将公钥添加到 GitHub
- 登录到你的 GitHub 帐户。
- 点击右上角的头像,然后选择 “Settings”(设置)。
- 在左侧菜单中,点击 “SSH and GPG keys”。
- 点击 “New SSH key” 按钮。
- 将之前获取到的公钥粘贴到 “Key” 字段中,并给这个密钥起个名字,例如 “My Laptop Key”。
- 点击 “Add SSH key” 按钮保存。
4. 测试 SSH 连接
可以使用以下命令测试是否配置成功:
ssh -T git@github.com
如果成功,你会看到类似于这样的消息:
Hi username! You've successfully authenticated, but GitHub does not provide shell access.
5. 重新推送代码
配置完毕后,再次尝试执行推送操作:
git push -u origin master
如果以上步骤都已完成,但问题仍然存在,请检查你的公钥和私钥文件是否有误,或者考虑删除旧的密钥并重新生成新的一对密钥。
内容由零声教学AI助手提供,问题来源于学员提问