Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
向GitHub添加SSH密钥的问题_Git_Github_Ssh_Ssh Keys - Fatal编程技术网

向GitHub添加SSH密钥的问题

向GitHub添加SSH密钥的问题,git,github,ssh,ssh-keys,Git,Github,Ssh,Ssh Keys,我遇到了一个关于GitHub使用的SSH密钥格式的问题。我曾经生成一个新的SSH密钥: $ ssh-keygen -t rsa -C "youremail@youremail.com" 然后,我将密钥复制到GitHub帐户页面设置中的SSH部分。但是,它附带了如下发布通知: Key is invalid. It must begin with 'ssh-ed25519', 'ssh-rsa', 'ssh-dss', 'ecdsa-sha2-nistp256', 'ecdsa

我遇到了一个关于GitHub使用的SSH密钥格式的问题。我曾经生成一个新的SSH密钥:

$ ssh-keygen -t rsa -C "youremail@youremail.com"
然后,我将密钥复制到GitHub帐户页面设置中的SSH部分。但是,它附带了如下发布通知:

Key is invalid. It must begin with 'ssh-ed25519', 'ssh-rsa', 'ssh-dss', 'ecdsa-sha2-nistp256', 'ecdsa-sha2-nistp384', or 'ecdsa-sha2-nistp521'. Check that you're copying the public half of the key
接下来,我编辑了我的SSH密钥,从SSH rsa开始,最后编辑了我的电子邮件地址。然而,问题仍然存在


解决这个问题的办法是什么? 

ssh-keygen
将为您生成一对密钥,一个私有密钥,一个公共密钥。听起来你上传错了。GitHub需要公钥,通常在这里:
~/.ssh/id\u rsa.pub

只需按照以下步骤操作,即可立即设置ssh密钥:

  • 生成新的ssh密钥(如果已经有密钥,则跳过此步骤)
    ssh-keygen-t rsa-C”your@email“

  • home/.ssh
    目录(或windows下的
    Users/.ssh
    中设置密钥后,打开密钥并复制内容


如何将SSH密钥添加到GitHub帐户?
  • 登录到GitHub帐户

  • 点击右上角的牧场主(设置)

  • 单击SSH密钥

  • 单击addssh密钥

  • 粘贴密钥并保存


如果您正在使用Mac电脑并且正在键入GitHub的指令(例如,您可能正在键入并且仅使用制表符(例如,自动完成),则您可以执行以下操作:-)

$pbcopy<~/.ssh/id\u rsa

而不是

$pbcopy<~/.ssh/id\u rsa.pub

对于前者,您实际上是在复制,并尝试粘贴您的私钥


我希望这能为您节省一些时间。

打开文件
~/.ssh/id\u rsa.pub
。然后用编辑器打开它,并将公钥复制到您的GitHub帐户。

我遇到了同样的问题,结果是因为注释中有一个
-
。GitHub显然不喜欢
-
,但
是可以的。

将公钥复制到剪贴板的另一种方法:

clip < ~/.ssh/id_rsa.pub
clip<~/.ssh/id\u rsa.pub
将SSH密钥添加到Github

检查一下你有没有钥匙

ssh-add -l
如果不是,则按照步骤生成密钥

ssh-keygen -t rsa -b 4096 -C your__gmail
现在要复制密钥,请使用xclip工具,或者直接转到文件并复制

sudo apt install xclip
xclip -sel clip < ~/.ssh/id_rsa.pub
sudo apt安装xclip
xclip-sel clip<~/.ssh/id\u rsa.pub
  • 现在转到github.com和转到设置
  • 选择SSH和GPG密钥
  • 新SSH密钥
  • 在标题字段中输入“您的选择名称”
  • 将公钥粘贴到密钥字段中
  • 单击添加SSH密钥

谢谢!是的,我刚找到一个以.pub结尾的,所以这是正确的,工作正常!哇。这也是我的问题。我感觉自己像头驴子。谢谢。有时我感觉自己像个疯子。有时我不喜欢。看起来这件事发生在你身上,因为你试图添加私钥而不是公钥。请确保这是一种id\u rsa.pubEasy的方式rab这个复制/粘贴到GitHub的密钥使用的是他们建议的:
clip<~/.ssh/id_rsa.pub
命令对于我们这些让事情变得更加困难的人,还要确保您使用的是.pub文件中的文本。默认情况下安装的是哪个平台?