【发布时间】:2014-06-12 19:04:21
【问题描述】:
我有一台工作计算机,它连接到我工作网络上的 Git 存储库。
我已在该计算机上安装了 TeamViewer,并且我正在使用 TeamViewer VPN 从我的个人笔记本电脑连接到该计算机。
我还在运行一个名为 ReDirProxy 的代理应用程序,以便从我的笔记本电脑访问我的工作网络,包括 Git 服务器。
我可以使用 PuTTY 通过 SSH 连接到 Git 服务器,方法是在连接之前在 PuTTY 中指定代理设置。我已将这些设置保存在名为“Git”的配置文件下。
我还可以通过浏览器连接到工作网络上的其他服务器。很明显,VPN 或代理本身没有任何问题。
但是,当我尝试通过命令行访问 git 时,它似乎永远无法正常工作。
- 如果我尝试 ping git 服务器,它不起作用。
- 如果我尝试从 git 服务器克隆,使用 PuTTY 配置文件名称(例如
git clone git@Git:myrepo.git),git 只会在命令行挂起。 - 如果我打开一个 git 存储库,该存储库的遥控器配置为指向我的 PuTTY 配置文件(例如
git@Git.myrepo.git)并尝试执行pull或fetch,git 只会在命令行中挂起。
我尝试使用 git config --global http.proxy xyz:123 命令为 git 指定代理服务器,但无济于事。
我不明白为什么 Git 不工作,但 PuTTY SSH 工作。 PuTTY 是否有一些配置,以便它通过我的 VPN/Proxy 工作,它没有通过 git?
我在这里做错了什么?
【问题讨论】:
-
为需要的人提供一些额外的细节:我在两台计算机上都运行 Windows 2008 Server R2。我正在使用 MSysGit 和 GitExtensions。我正在通过 PowerShell 命令提示符运行我的所有 git 命令。
-
另外,这显然不是我的 VPN/代理本身的问题,因为我可以通过 PuTTY 连接到 Git 服务器,并且可以通过我的网络浏览器浏览到网络上的各种其他服务器我的个人笔记本电脑。然而这可能是 Git 不知道我的代理并试图从我的笔记本电脑的连接直接进入 Git 服务器的问题。