我很困惑,在推送时,我总是被提示输入我的用户名和密码,但我已经设置了一个公钥。
我可以使用ssh -T [email protected]
成功登录。
为了让事情变得更奇怪,在我的笔记本电脑上(我首先设置),我可以通过单击“使用ssh”或https来通过ssh克隆一个repo。在我的塔上(有问题)只有https。
它说“使用Web URL使用git或checkout与SVN”
我有一个ssh服务器在塔上运行,但没有监听端口22,因为我从我的路由器转发了一个端口,并且更喜欢使用非标准端口,这可能是问题吗?如果那确实是问题,我怎么能让ssh服务器监听两个端口?
在GitHub上设置SSH并不会神奇地使所有连接都使用SSH。您可能希望通过SSH连接到某些遥控器,而某些通过HTTPS连接。您的远程可能配置为使用HTTPS。
您可以使用git remote -v
查看您的遥控器使用的网址,例如
$ git remote -v
origin https://github.com/github/hub.git (fetch)
origin https://github.com/github/hub.git (push)
并且git remote set-url <remote> <new-url>
将它们更新为SSH URL,例如
$ git remote set-url origin [email protected]:github/hub.git
origin [email protected]:github/hub.git (fetch)
origin [email protected]:github/hub.git (push)