Git和http_proxy(Windows上的SparkleShare和http_proxy)

时间:2011-12-29 14:34:11

标签: windows git share http-proxy

我刚刚根据指南成功构建了适用于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

2 个答案:

答案 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。

Local tunnel in PuTTY

现在,只要您的终端打开并运行,您就可以通过服务器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。

in SparkleShare

但这是一个解决方法。我正在寻找更好的解决方案。

相关问题