7

我正在尝试克隆另一个开发人员拥有的私有存储库。我没有与该开发人员直接沟通。他们向我发送了 theirusername-id_rsa.pub 文件和 theirusername-priv.key.ppk 文件。我了解 ppk 文件特定于 Putty ssh 客户端。有人可以向我提供如何克隆他们的回购的步骤吗?我已经用我自己的帐户配置了 git,我想我必须将他们的 ssh 密钥添加到我的 ssh/config 文件或其他东西中,但我有点 ssh 菜鸟。

git clone git@github.com:theirusername/pro.git
Cloning into 'pro'...
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

编辑:我能够访问 github 存储库并将自己添加为协作者。即使这样做了我也不能

git clone git@github.com:theirusername/pro.git

然而

git clone https://github.com/theirusername/pro.git

确实有效。

4

3 回答 3

14

他们向我发送了 theirusername-id_rsa.pub 文件和 theirusername-priv.key.ppk

首先,告诉他们永远不要这样做。出于某种原因,这样调用公钥/私钥。让多个实例(人或计算机)共享同一个密钥是违反其观点的。您应该为每个单独的密钥使用一个单独的密钥,以在它们之间建立一对一的关联。

如果他们无法将您添加为合作者(这需要您自己的用户帐户),那么他们应该将您的密钥添加到他们自己的个人资料中。我强调的是“你的密钥”,因为应该生成它并只向他们发送公钥。私人的应该永远对其他人保密。

话虽如此,当您拥有 PPK、PuTTY 私钥文件时,您有两个选择。首先是使用 PuTTY 的pageant加载密钥文件并让 Git 使用 PuTTY 的plink作为 SSH 客户端。您可以通过将GIT_SSH环境变量设置为 的路径来做到这一点plink.exe,例如C:\Program Files\PuTTY\plink.exe

第二种选择是将 PPK 转换为 Git 附带的 SSH 客户端可以使用的 OpenSSH 密钥文件。您可以通过使用 PuTTYgen 打开 PPK 并选择“转换/导出 OpenSSH 密钥”来做到这一点。您应该将文件保存为C:\Users\<username>\.ssh\id_rsa让 Git 使用它。

于 2012-12-26T02:22:36.547 回答
4

你需要:

于 2012-12-25T10:22:11.050 回答
0

只需将以下代码复制并粘贴到 bat 文件中并执行即可

echo y|"C:\Program Files (x86)\PuTTY\plink.exe" root@XXX.XXX.XXX.XXX -pw XXXX 退出

XXX.XXX.XXX.XXX :这是您设备的 IP 地址。

XXX : 这是您设备的密码

于 2016-11-18T11:58:41.440 回答