将 linux ssh 配置语法翻译成 PuTTY 和 Git
Translate linux ssh config syntax to PuTTY and Git
我必须使用代理才能从我的计算机连接到外部服务器。我从那里通过 ssh 连接到远程服务器,然后跳转到最终的 gitlab 服务器,这样我就可以做 git 事情了。
总结:个人电脑 -> 内部服务器(代理) -> 远程服务器 -> 远程 Git实验室服务器 === 现在我应该可以使用 Git/SourceTree/etc 做 "git stuff".
我已经使用下面的说明在 Ubuntu 上运行(无需通过代理),但我需要在 Windows 上使用此功能(必须通过代理)因此油灰。 website 非常接近地描述了我正在做的事情。
我得到的 linux 不考虑代理的说明如下:
创建以下 ~/.ssh/config 文件:
Host gitlab.TEMP.com
User <your user id>
ProxyCommand nc -x localhost:5555 %h %p
创建 ssh 隧道:
ssh -D 5555 <your user id>@gitlab.TEMP.com
在浏览器上调整 Socks 代理(这是在浏览器中查看 gitlab 所必需的。在您的非默认浏览器 (Explorer/Mozilla) 中执行此操作将无法使用此浏览器搜索互联网)
localhost:5555
在连接的浏览器中登录 Gitlab 并添加 rsa 对信息
克隆存储库
git clone git@gitlab.TEMP.com:<your user id>/<project>.git
重要提示:我已经能够通过代理访问远程 gitlab 服务器以查看 gitlab 存储库(即步骤 1-4 加上缺少的代理步骤)但是我无法让 Git(通过 Git Bash 或 SourceTree)连接到存储库(第 5 步)。我收到错误:
ssh: connect to host gitlab.TEMP.com port 22: Connection refused
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
不胜感激,putty界面图片送10金星! :) 提前致谢。
通过其他一些不在 Stack Overflow 上的很棒的人的一些输入,我已经能够成功连接并发挥 Git 魔力。下面的图片是我唯一需要用腻子做的事情。此解决方案适用于 Git Bash 和 SourceTree。
在“会话”选项卡中:
插入主机名,使用端口 22 和 select SSH。
在“代理”选项卡中:
使用适当的代理类型、主机名和端口。此信息取决于您的设置。我使用的代理是 HTTP 类型。
隧道选项卡:
确保 "Local ports accept connnections from other hosts" 框是 checked.Add 具有源端口的本地主机。我选择了 2000,但不确定这是否重要。还要添加动态 5555。这使我可以在浏览器中查看 Gitlab 服务器站点并设置 rsa 密钥(请参阅原始问题中的步骤 3)。
您现在应该可以通过浏览器访问 gitlab。如果您的 rsa 密钥对已设置,则转到您最喜欢的 Git 应用程序或 Git bash 并输入以下内容以在当前工作目录中克隆 repo:
git clone ssh://git@localhost:2000/PROJECT.git
您可能会收到 yes/no 问题的提示(键入 'yes' 然后按回车键)和您的 rsa 关键词。然后应该创建本地克隆。
希望这对你有用,就像对我一样!
我必须使用代理才能从我的计算机连接到外部服务器。我从那里通过 ssh 连接到远程服务器,然后跳转到最终的 gitlab 服务器,这样我就可以做 git 事情了。
总结:个人电脑 -> 内部服务器(代理) -> 远程服务器 -> 远程 Git实验室服务器 === 现在我应该可以使用 Git/SourceTree/etc 做 "git stuff".
我已经使用下面的说明在 Ubuntu 上运行(无需通过代理),但我需要在 Windows 上使用此功能(必须通过代理)因此油灰。 website 非常接近地描述了我正在做的事情。
我得到的 linux 不考虑代理的说明如下:
创建以下 ~/.ssh/config 文件:
Host gitlab.TEMP.com User <your user id> ProxyCommand nc -x localhost:5555 %h %p
创建 ssh 隧道:
ssh -D 5555 <your user id>@gitlab.TEMP.com
在浏览器上调整 Socks 代理(这是在浏览器中查看 gitlab 所必需的。在您的非默认浏览器 (Explorer/Mozilla) 中执行此操作将无法使用此浏览器搜索互联网)
localhost:5555
在连接的浏览器中登录 Gitlab 并添加 rsa 对信息
克隆存储库
git clone git@gitlab.TEMP.com:<your user id>/<project>.git
重要提示:我已经能够通过代理访问远程 gitlab 服务器以查看 gitlab 存储库(即步骤 1-4 加上缺少的代理步骤)但是我无法让 Git(通过 Git Bash 或 SourceTree)连接到存储库(第 5 步)。我收到错误:
ssh: connect to host gitlab.TEMP.com port 22: Connection refused
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
不胜感激,putty界面图片送10金星! :) 提前致谢。
通过其他一些不在 Stack Overflow 上的很棒的人的一些输入,我已经能够成功连接并发挥 Git 魔力。下面的图片是我唯一需要用腻子做的事情。此解决方案适用于 Git Bash 和 SourceTree。
在“会话”选项卡中:
插入主机名,使用端口 22 和 select SSH。
在“代理”选项卡中:
使用适当的代理类型、主机名和端口。此信息取决于您的设置。我使用的代理是 HTTP 类型。
隧道选项卡:
确保 "Local ports accept connnections from other hosts" 框是 checked.Add 具有源端口的本地主机。我选择了 2000,但不确定这是否重要。还要添加动态 5555。这使我可以在浏览器中查看 Gitlab 服务器站点并设置 rsa 密钥(请参阅原始问题中的步骤 3)。
您现在应该可以通过浏览器访问 gitlab。如果您的 rsa 密钥对已设置,则转到您最喜欢的 Git 应用程序或 Git bash 并输入以下内容以在当前工作目录中克隆 repo:
git clone ssh://git@localhost:2000/PROJECT.git
您可能会收到 yes/no 问题的提示(键入 'yes' 然后按回车键)和您的 rsa 关键词。然后应该创建本地克隆。
希望这对你有用,就像对我一样!