29

我必须检查一些代码并运行它。我有网址:

svn+ssh://myuser@www.myclient.com/home/svn/project/trunk

我有一个带有他们私钥的文件。我该怎么做才能获得此代码?

4

8 回答 8

57

如果您只需要为 svn 使用自定义密钥,以下将起作用:

SVN_SSH="ssh -i /path/to/key_name"

export SVN_SSH

svn commands

http://labs.kortina.net/2010/01/30/svn-checkout-with-private-key-over-ssh/

于 2010-12-15T22:08:08.870 回答
14

将此条目添加到您的~/.ssh/config文件中:

Host YOUR_SERVER
IdentityFile YOUR_PRIVATE_KEY_PATH # (ex: ~/.ssh/rsa)
User USER_NAME

有关更多选项,请参阅 ssh_config 手册页

于 2011-03-05T14:33:06.277 回答
8

只需使用 ssh-add 命令(它会询问您的密码,这是您创建此公钥私钥对时使用的密码)。

ssh-add PATH_TO_YOUR_PRIVATE_JEY
e.g. ssh-add ~/.ssh/myPrivateKey.key

通过执行此操作验证您是否正确添加了密钥

ssh-add -l

这将列出它正在使用的所有身份文件。

于 2012-08-31T23:37:52.343 回答
5

私钥在客户端机器上,通常命名为~/.ssh/id_rsa~/.ssh/id_dsa~/.ssh/identity取决于 SSH 版本和密钥类型。但是,您可以只使用ssh -i path/to/private.key.

这是假设服务器上存在相应的公钥~/.ssh/authorized_keys,并且您的本地计算机正在运行 OpenSSH 客户端。如果您在 Windows 上使用 PuTTY,只需打开 Pageant 程序,然后通过 GUI 导入密钥。

于 2008-10-10T16:47:43.287 回答
2

以下是我用来通过 svn+ssh 从 Mac OS X 命令行连接到我的服务器的步骤:

在服务器上:

ssh-keygen -b 1024 -t dsa -f mykey   (creates mykey and mkey.pub files)

将mykey.pub的内容复制到 ~/.ssh/authorized_keys (如果不存在,则创建 authorized_keys 文件)

将 mkey下载到本地计算机并运行:

chmod 600 mkey  (the next step won't run otherwise)
svn-add mkey  (enter your passphrase)

使用 ssh 从您的 svn 服务器结帐:

svn co svn+ssh://user@server.com/repos/path

从您的服务器中删除 mkey 和 mkey.pub

于 2011-08-16T20:48:03.040 回答
2

除了答案之外,还有来自带有颠覆性的 Eclipse 3.7 的两个屏幕截图。


通用设置
输入用户名!(我在截屏之前忘记了这一点)。不要输入密码。


SSH 设置 如果您的私钥受密码保护,请输入密钥密码。


一张图片胜过千言万语。

于 2014-01-16T10:34:02.923 回答
1

将私钥添加到您的~/.ssh/文件夹,然后运行ssh-agent $SHELL; ssh-add;​​,然后该svn coURL 的 应该可以工作。

于 2008-10-10T16:37:09.423 回答
0
SVN_SSH="ssh -i /xxx/xxx/id_rsa" svn checkout svn+ssh://username@svn.xxx.com/data
于 2019-04-26T05:18:08.463 回答