我已阅读Configuring Git over SSH to login once。 Muein Muzamil的回答说,使用SSH,我们必须配置如下:为什么Git Shell可以使用带有HTTP远程起始URL的SSH?
[email protected]:your_username/your_project.git
这就是说,在正常的Windows PowerShell,SSH不使用HTTPS工作。
Windows的GitHub附带了Git Shell。这是一个强大的PowerShell,具有一些奇特的功能,包括能够使用SSH与HTTP。我知道这是因为我刚刚运行git push
而无需进行身份验证,然后运行git config -l
以查看我正在使用HTTPS作为远程原始URL。
为什么正常的Windows PowerShell需要[email protected]协议,而Git Shell不需要?
“G4W ...有您的GitHub帐户信息,因此它可以使用... HTTPS。”这回答了我的问题。 – 2014-10-10 20:59:45
后续问题(可能属于自己的SO问题):*为什么GitHub for Windows(G4W)创建一个SSH密钥?*安装后,有一个'〜\ .ssh \ github_rsa'键及其''。 pub'。 G4W是否曾经使用过这种方式,或者是否总是使用HTTPS?我自己的感觉是,GFW在通过'git @ github.com'协议进行通信时使用SSH密钥,否则使用用户名和密码,并且我们可以使用'git remote set-url origin'命令手动控制此密钥。 –
2014-10-10 21:02:48
你在想什么可能是对的,但'git @ github.com'不是一个协议,ssh是。 Git创建ssh密钥以通过ssh进行身份验证。认证后,您可以推/拉。 – dennisschagt 2014-10-10 23:42:12