我认为要克隆私有(private)仓库,我们需要验证计算机是否可信。但是对于公共(public)仓库,如果 github 的设置中没有添加 ssh key ,不确定为什么 git 被设计为要求机器的 ssh key ?
最佳答案
如果您通过 SSH 连接,Git(实际上是 Git 使用的 SSH 代理)将始终要求以私钥形式进行身份验证。这是因为 SSH 协议(protocol)实际上并不关心您访问的是公共(public)存储库还是私有(private)存储库。
您可以通过查看远程 URL 轻松确定用于克隆的协议(protocol)。 SSH 网址如下所示:
-
ssh://git@github.com/<user>/<repo>.git
-
git@github.com:<user>/<repo>.git
但是,在 GitHub 上,您始终可以使用 git://
克隆公共(public)存储库协议(protocol)而不是 ssh://
,不需要身份验证:
git clone git://github.com/<user>/<repo>.git
或者,使用 HTTPS,这将(如果没记错的话)只需要对私有(private)存储库进行身份验证:
git clone https://github.com/<user>/<repo>.git
关于git - 为什么克隆公共(public) Git 存储库需要机器的 ssh key ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30989718/