有人可以解释一下账户 ssh-key 和部署 ssh-key 之间的区别吗?
我经常使用它们,但从未尝试过了解它们的区别。
SSH帐户密钥可以识别您的身份,并允许您与GitHub进行交互(例如,您可以向自己的仓库推送代码)。
正如在“只读部署密钥”中提到的,您的ssh部署密钥是具有只读访问权限的密钥。
它不能对您进行身份验证。
部署密钥是存储在您的服务器上并授予对单个GitHub存储库的访问权限的SSH密钥。 它们经常用于在部署或持续集成运行期间克隆存储库。
部署有时涉及合并分支和推送代码,因此部署密钥始终允许读取和写入访问。由于在许多情况下不需要写入访问,现在您可以创建具有只读访问权限的部署密钥。
您可以创建读/写部署密钥,但是它的只读能力与帐户SSH密钥形成对比:后者(SSH密钥)将始终用于读/写访问您的存储库。
您可以在BitBucket上使用部署密钥达到同样的目的:
部署密钥授予公共或私有存储库的只读访问权限。使用部署密钥,用户或进程可以通过SSH拉取或克隆存储库。部署密钥具有以下特性和限制:
- 部署密钥不适用于您的计划限制。
- 您可以将相同的部署密钥添加到多个存储库中。
- 部署密钥必须是唯一的 - 它不能与帐户关联。