IDEA中Git使用http协议和ssh协议的区别

本文介绍了Git的本地、HTTP/HTTPS、SSH和git协议,并详细对比了HTTPS与SSH协议在使用上的差异,包括原理和外观。HTTPS协议每次操作需要输入账号密码,而SSH在配置公钥后可免密操作。此外,还阐述了如何在IDEA中使用这两种协议。
摘要由CSDN通过智能技术生成

版权声明:本文为CSDN博主「大猫爱小奶牛」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/a924382407/article/details/104263928

一、Git传输协议 
1.1 git可以使用以下四种协议进行资料的传输: 
本地协议(Local)HTTP/HTTPS协议SSH(Secure Shell)协议git协议 
1.2 目前码云支持的协议 
HTTPS协议,ssh协议进行代码的推送/拉取 
二、https协议和ssh协议在使用上的差别 
原理上区别? 
https协议每次fetch和push代码都需要输入账号和密码。ssh协议在克隆之前必须配置和添加SSH Key,必须是这个仓库的拥有者。但不需要每次都输入账号和密码。 
外观上区别? 
ssh协议的: git@gitlab:hustle/backend/bigdata/bd-api.git 
http协议的: http://gitlab/hustle/backend/bigdata/bd-api.git 
2.1 http协议简介 
HTTP协议(新,GitHub目前就使用了这种协议):支持读写模式。既可以像git://协议一样设置匿名服务,又可以像SSH一样提供传输时的授权和加密,而且只用一个URL就可以得到git://和SSH的功能,省去了为不同的需求设置不同的URL。 HTTP协议推送(push)以及拉取(pull),服务器都会询问你的用户名和密码。 
HTTP协议的优点: 不同的访问方式只需要一个URL,服务器只在需要授权时提示输入授权信息。 相对于SSH而言,不需要生成SSH秘钥对再把秘钥上传到服务器上。 HTTP/S被广泛采用,一般的企业防火墙都会允许这些端口的数据通过。 缺点: 在一些服务器上,架设HTTP/S协议会比SSH协议棘手一些;每次需要输入用户名和密码,管理这些凭证会比较麻烦一些(当然你可以使用凭证存储工具,keychain(OSX))。 
除此之外没有别的缺点。 
2.2 ssh协议简介 
SSH 为 Secure Shell 的缩写,是一种网络安全协议,专为远程登录会话和其他网络服务提供安全性的协议。通过使用 SSH,可以把传输的数据进行加密,有效防止远程管理过程中的信息泄露问题。 从客户端来看,有两种验证方式:基于密码、基于密钥   说明: (1) 首先在客户端生成一对密钥(公钥、私钥); (2) 客户端将生成的公钥拷贝到需要访问的服务端机器上; (3) 当客户端再次发送一个连接请求,包括 ip、用户名; (4) 服务端得到客户端的请求后,会到 authorized_keys 中查找,如果有相应的 IP 和用户,就会随机生成一个字符串,例如:qwer; (5) 服务端将使用客户端拷贝过来的公钥对随机字符串 qwer 进行加密,然后发送给客户端; (6) 得到服务端发来的消息后,客户端会使用私钥进行解密,然后将解密后的字符串发送给服务端; (7) 服务端接受到客户端发来的字符串后,跟之前的字符串进行对比,如果一致,就允许免密码登录。 
三、如何使用协议 
3.1使用http协议 
项目右键-》Git -》 repository -》 remote -》选择http协议的地址  
3.2 使用ssh协议 
首先Git Bash或软件生成SSH秘钥 
生成秘钥请参考 
SSH公钥默认存储在账户的主目录下的 ~/.ssh目录。 
//Git Bash
$ cd ~/.ssh
$ ls
id_rsa id_rsa.pub known_hosts
1234 
id_rsa或id_rsa文件是密钥。 .pub后缀的文件是公钥 通过ssh-keygen创建ssh公钥,要求输入密码时留空就可以在使用的时候不输入。 
使用cat ~/.ssh/id_rsa.pub查看公钥.  注意:1)http协议的url中包含此协议,直接选择即可在IDEA中使用 
2)ssh协议使用前必须配置本地和GitLab的公钥,然后才能在IDEA中使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值