我是 git 新手。为什么我们在 Git 中使用密钥?配置 git 存储库的公钥和私钥?我们可以在没有密钥的情况下配置 git 吗?如何使用生成的公钥,这有什么需要?
2 回答
SSH 用作机器和 git 服务器之间的身份验证和通信机制。根据您使用的内容,可能还有其他可用的身份验证/通信协议方式。
例如,GitHub 提供 HTTPS 和 SSH。看看这里。
SSH 认证的中介点是用户的机器。正如 Miky Dinescu 所指出的,公钥/私钥对是身份验证/验证机制。
我认为没有理由必须从一个存储库推送和拉取到另一个存储库。这不是它的工作方式。出于团队工作的目的,你有分叉、拉取请求、合并功能和一堆其他东西。
考虑您的项目的后勤工作,并弄清楚需要多少个存储库。如果客户端和服务器完全分开,文件/结构完全不同,并且可能有不同的团队在处理它们,那么更多的存储库是非常实用的。
如果只是你试图掌握版本控制并处理一个小项目,你真的不需要两个 repos。给我一些有关您当前方案的更多详细信息,这将更有帮助。
我们使用公钥/私钥,因为它们是非对称加密的关键,这使得验证和授权用户访问存储库成为可能。
公钥的使用对于生成数字消息签名非常重要,该签名可以验证和保证将更改提交到存储库中的完整性。
另一方面,它们还提供了一种自然的方式来在签出代码时确认存储库中文件的真实性和完整性。
由于 Git 被设计为一个分布式源代码控制存储库系统,它需要能够允许许多人访问下载和上传数据,而无需始终保持连接,但同时又不牺牲安全性。