git中https和SSH克隆的区别
在git中clone项目有两种方式:HTTPS和SSH,它们的区别如下:
HTTPS:不管是谁,拿到url随便clone,但是在push的时候需要验证用户名和密码;
SSH:clone的项目你必须是拥有者或者管理员,而且需要在clone前添加SSH Key。SSH 在push的时候,是不需要输入用户名的,如果配置SSH key的时候设置了密码,则需要输入密码的,否则直接是不需要输入密码的。
结论:https是克隆时不校验,但是提交时校验,ssh正好相反,先校验,那么必须先进行配置才行,否则会报permission denied (publickey错误
在git中使用SSH连接
为什么要创建公钥和预配置呢?首先ssh模式目的是为了让clinet和git server能够安全通信,所以采用了数字签名RSA或者DSA来完成这个操作,ssh加密原理需要预配置公钥,否则怎么能保证安全通信呢。
创建秘钥
ssh-keygen
1
然后一直回车即可。
执行结束后,~/.ssh/目录下会多两个文件:
id_rsa:私钥
id_rsa.pub:公钥
将公钥( id_rsa.pub)的内容复制到gitee或者github的SSH中的公钥文本域中
然后再通过 ssh克隆就好了
来自 https://blog.csdn.net/Supreme7/article/details/125872449