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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.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
使用公钥和私钥的Git克隆_Git_Github_Private Key_Public Key_Git Clone - Fatal编程技术网

使用公钥和私钥的Git克隆

使用公钥和私钥的Git克隆,git,github,private-key,public-key,git-clone,Git,Github,Private Key,Public Key,Git Clone,多年来,我一直在尝试使用公钥和私钥而不是密码来克隆git存储库。我在windows上使用puttygen生成密钥。我无法从windows或linux登录。我不断得到以下错误: git克隆[git repo目录] 克隆成文件 输入密钥“/.ssh/id_dsa”的密码短语: 权限被拒绝(公钥) 我首先使用密码短语创建私钥,但这不起作用,然后我在没有密码短语的情况下重新保存私钥(使用puttygen),但它仍然不起作用 如何解决此问题?我一直在努力解决它这么长时间,但现在完全卡住了 非常感谢 您必须

多年来,我一直在尝试使用公钥和私钥而不是密码来克隆git存储库。我在windows上使用puttygen生成密钥。我无法从windows或linux登录。我不断得到以下错误:

git克隆[git repo目录]

克隆成文件

输入密钥“/.ssh/id_dsa”的密码短语:

权限被拒绝(公钥)

我首先使用密码短语创建私钥,但这不起作用,然后我在没有密码短语的情况下重新保存私钥(使用puttygen),但它仍然不起作用

如何解决此问题?我一直在努力解决它这么长时间,但现在完全卡住了

非常感谢

  • 您必须知道两件事:可以创建的私钥是putty和openssh兼容的格式,并且这些格式不能自由交换(客户端工具只能理解putty或openssh),Linux只能理解openssh类型的密钥
  • 您必须使用客户端(附加)工具,该工具根据请求通过密钥提供非交互式身份验证
  • 第1点和第2点的结果

    Windows客户端:运行pageant,将putty的私钥加载到其中(输入密钥的密码短语)。也许您必须在Git ssh客户机中从系统重新定义到plink

    Linux客户端:在Windows主机上,将putty类型的私钥加载到puttygen中,并导出到openssh密钥中。将此文件保存在Linux框中为
    /.ssh/id\u dsa
    。运行ssh代理,输入一次密码。ssh代理将在会话期间为所有请求的密钥使用密码


    PS:在Github ssh相关文档和测试shell的帮助下调试您的问题

    为了获得更多帮助,您将不得不解释更多关于您正在做的事情。“克隆git帐户”是什么意思?无法登录到什么?您也没有说过任何关于您的公钥以及您使用它所做的可能允许您使用私钥访问的操作。。。不管是什么。你在你的远程存储库中写了你的公钥吗?我的意思是我在服务器上有一个git存储库。我的公钥已经被添加到其中(由维护服务器的人添加的,因此不会出现问题)。我想将git存储库从服务器克隆到本地系统。是,公钥已添加到远程repo。我尝试过不同的回购协议。并尝试从Windows和Linux进行克隆,但都不起作用。