Git 如果我使用https连接到存储库,如何使用SSH密钥?
公司防火墙只允许https连接到github.com(无ssh),因此我添加了如下存储库:Git 如果我使用https连接到存储库,如何使用SSH密钥?,git,github,ssh,https,Git,Github,Ssh,Https,公司防火墙只允许https连接到github.com(无ssh),因此我添加了如下存储库: git remote add origin https://github.com/myProject.git 不幸的是,如果我调用gitpush,github会询问我的用户名和密码。我已经使用ssh-keygen创建了一个ssh密钥 如何在https存储库中使用SSH密钥 我试过: 但我得到了这个错误: ssh: connect to host ssh.github.com port 443: Con
git remote add origin https://github.com/myProject.git
不幸的是,如果我调用gitpush
,github会询问我的用户名和密码。我已经使用ssh-keygen
创建了一个ssh密钥
如何在https存储库中使用SSH密钥
我试过: 但我得到了这个错误:
ssh: connect to host ssh.github.com port 443: Connection refused
这个错误可能是因为
ssh.github.com
是一个专用服务器(我认为其中有几个服务器,目前它解析为两个不同的IP地址),而您公司的防火墙可能只列出了与“基本”的连接的白名单github.com
解析为一组不同于ssh.github.com
这是必需的,因为在这两种情况下,在同一端口上处理传入连接的服务器端软件必须不同(SSH服务器与说HTTPS的web服务器)
至于你的一般问题-不,这是不可能的:SSH(SecureSHell协议和HyperTextTTransferprotocol,Secure)彼此之间没有任何关系,除非它们都提供安全性(认证和保密)对于它们所管理的通信通道,在http:/COD>上不是“代码> SSH”,它是HTTPS端口上的“代码> SSH。协议仍然是SSH,只是使用的端口从22到443的变化。”ITER Atter,如果您原来的问题是每次通过HTTPS访问GITHUB RePOS需要键入密码,则可以考虑使用G。它是“凭据缓存”,可以设置为在内存中保存凭据一段可配置的时间。请参阅
git-help-credentials
。这不是一个确切的解决方案,但总比什么都没有好。(对于SSH密钥,在将其添加到SSH代理时,您仍然必须解密它们,这基本上是一样的。)
ssh: connect to host ssh.github.com port 443: Connection refused