SVN + SSH和Sourceforge

Zer*_*ero 16 svn windows sourceforge

我是Sourceforge和SVN(Windows上的SilkSVN)的新手.

我设法检查了一个项目

svn co --username=zeroth123 svn://zeroth123@svn.code.sf.net/p/stddecimal/code/trunk stddecimal-code
Run Code Online (Sandbox Code Playgroud)

但是,每次我尝试使用ssh(所以我可以检查一下)它都失败了

> svn co --username=zeroth123 svn+ssh://zeroth123@svn.code.sf.net/p/stddecimal/code/trunk stddecimal-code
svn: E720087: Unable to connect to a repository at URL 'svn+ssh://zeroth123@svn.code.sf.net/p/stddecimal/code/trunk'
svn: E720087: Can't create tunnel: The parameter is incorrect.
Run Code Online (Sandbox Code Playgroud)

我已经SVN_SSH指出我的完全合格plink.exe,它没有任何区别.我也试过改变它junk.exe并没有得到任何不同,所以我认为我们甚至没有看SVN_SSH,这耗尽了我在Sourceforge和其他论坛上找到的所有建议.

为了记录我是项目管理员,因此有写权限(或者至少我认为!)

有任何想法吗?

Zer*_*ero 21

`%SVN_SSH%需要正确设置,并且需要在Sourceforge中注册SSH密钥.

请注意,默认情况下,新的Sourceforge项目是版本2.0,而99%的Sourceforge文档适用于版本1.0并且过时.

这些说明假设您已安装并安装SVNPuTTY工具,并且您可以使用非安全协议成功访问项目,例如只读svn checkout svn://USER@svn.code.sf.net/p/PROJECT/code/trunk PROJECT-code样式命令应该有效.

这些说明解释了如何svn checkout svn+ssh://...对Sourceforge的写访问所需的操作.

  1. 设置%SVN_SSH%为SSH客户端的完全限定路径.例如setx SVN_SSH "C:/Program Files (x86)/PuTTY/plink.exe"

    • svn期望在路径中使用正斜杠或双反斜杠
    • 您可能需要重新打开一个cmd窗口
    • 通过%SVN_SSH%在提示符下键入进行测试并确认您获得了ssh程序帮助屏幕(或者您希望在没有参数的情况下执行的任何行为)
  2. (可选?)缓存服务器RSA密钥.打开PuTTY,登录svn.code.sf.net(或项目的任何服务器).将出现一个提示,询问您是否要缓存服务器RSA密钥 - 单击是.

    • 您可能不需要这样做,如果不是,当您第一次使用SVN连接您的项目时,您将被问到相同的问题.类型y.
    • 但是,我这样做是因为我认为交互式提示可能是问题的一部分.
  3. 创建公钥/私钥并使用Sourceforge注册公钥.

    • 在创建密钥,更多信息在这里的例子.
    • 如果您使用PuTTY,请使用PuTTYgen创建密钥,并确保加载私钥pageant.具有讽刺意味的是Launchpad有很好的指
    • 可以通过导航到Home > Account > Services并单击在Sourceforge上注册公钥Edit SSH Keys for Shell/CVS.
  4. 现在使用svn+ssh协议的结账应该工作!


awm*_*oss 9

我按照这里的说明进行操作.它是一种更快的方法,不需要上传密钥等.

  1. plink.exehttp://the.earth.li/~sgtatham/putty/latest/x86/plink.exe下载
  2. 放置plink.exe在你的Windows安装目录(%windir%)
  3. 使用记事本打开以下文件 %APPDATA%\Subversion\config
  4. 添加或替换该[tunnels]部分中的以下行(使用sourceforge登录名和密码替换login和pwd)

    ssh = c:\\windows\\plink.exe -batch -l <LOGIN> -pw <PWD>
    
    Run Code Online (Sandbox Code Playgroud)

    (注意双反斜杠)

  5. 保存并关闭文件