我刚刚根据指南成功构建了适用于Windows的SparkleShare:
https://github.com/wimh/SparkleShare/wiki
并将我的ssh公钥导出到服务器。 问题是我无法从http_proxy后面的客户端连接到自定义端口上运行ssh的公共服务器。克隆任何git服务器我也有问题。我需要将git://协议切换到http:// one。有什么建议吗?有没有人有类似的经历?
这是一个日志文件:
15:25:13 [SSH] ssh-agent已启动,PID = 4380已添加身份: C:\用户\ MYUSER \应用程序数据\漫游\ sparkleshare \ sparkleshare.MYEMAIL.key (C:\用户\ sg0922706 \应用程序数据\漫游\ sparkleshare \ sparkleshare.MYEMAIL.key) 15:25:34 [Fetcher] [C:\ Users \ MYUSER \ Documents \ SparkleShare.tmp \ share] Fetchin g文件夹:ssh:// MYGITUSER @ MYHOST / MYPATH 15:25:34 [Fetcher] 禁用主机密钥检查MYHOST 15:25:34 [Cmd] git clone --progress “ssh:// MYGITUSER @ MYHOST / MYPATH”“C:\我们 ers \ MYUSER \ Documents \ SparkleShare.tmp \ share“15:25:37 [Git]退出代码 128 15:25:37 [Fetcher]失败15:25:37 [Fetcher]启用主机密钥 检查MYHOST
答案 0 :(得分:1)
要让SparkleShare使用您的代理,您需要修改作为SparkleShare一部分安装的msysgit的配置。导航到C:\Program Files (x86)\SparkleShare\msysgit\etc
并在记事本中编辑gitconfig文件,并在[http]
标记下添加以下行
proxy = http://user:pass@proxyurl:port
根据需要修改网址以匹配您的设置。然后,您可以使用“在我自己的服务器上”选项添加存储库的http网址。
答案 1 :(得分:0)
我有解决这个特殊问题的方法。我猜你已经通过一个简单的SSH客户端(即PuTTY)成功连接到你的服务器了?使用PuTTY,您可以通过任何类型的代理(例如HTTP,SOCKS,Telnet,..)轻松配置ssh连接。
您现在可以做的是指定本地“隧道”(SSH端口转发规则),如下所示:L22 127.0.01:22(参见附件)。如果您使用的是ssh命令行,请添加以下选项:-L 22:127.0.01:22。
现在,只要您的终端打开并运行,您就可以通过服务器URL访问您的git服务器:ssh://git@127.0.0.1。
如果您的本地端口22正忙,您可以在另一个端口上定义tunnet。即如果44没有被占用:L44 127.0.0.1:22。在SparkleShare中使用的URL变为ssh://git@127.0.0.1:44。
但这是一个解决方法。我正在寻找更好的解决方案。