1、Git文件的四种传输协定
Git有四种不同的协定用来传输材料,别离是:
本地协定Local
HTTP协定
SSH协定(Secure Shell)
Git协定
1.1 本地协定
应用场景:本地协定常见的状况就是,近程仓库地址在同一主机上的其余目录。
该协定因为无奈外网拜访,故而在实践中并不常见,不做具体理解。
详情见Git的根底概念。Git文件的四种传输协定。
1.2 HTTP协定
目前支流提供https地址,github、gitee、gitlab均反对。
如果你在 HTTP 上应用需受权的推送,治理凭证会比应用 SSH 密钥认证麻烦一些。 然而,你能够抉择应用凭证 存储工具,比方 macOS 的 Keychain 或者 Windows 的凭证管理器。
个别应用443端口;通过用户名/明码受权,可用性比拟高;速度相较快点。
1.3 SSH协定
个别应用22端口;通过先在本地生成SSH密钥对再把公钥上传到服务器;速度相较慢点。
SSH协定不反对匿名拜访 Git 仓库。 如果你应用 SSH,那么即使只是读取数据,使用者也必须通 过SSH 拜访你的主机, 这使得 SSH 协定不利于开源的我的项目,毕竟人们可能只想把你的仓库克隆下来查看。 如果你只在公司网络应用,SSH 协定可能是你惟一要用到的协定。 如果你要同时提供匿名只读拜访和 SSH 协定, 那么你除了为本人推送架设 SSH 服务以外, 还得架设一个能够让其他人拜访的服务。
1.4 Git协定
不足受权机制。 把 Git 协定作为拜访我的项目版本库的惟一伎俩是不可取的。 个别的做法里,会同时 提供 SSH 或者 HTTPS 协定的拜访服务,只让少数几个开发者有推送(写)权限,其他人通过 git:// 拜访只有 读权限。 Git 协定兴许也是最难架设的。 它要求有本人的守护过程,这就要配置 xinetd、systemd 或者其余 的程序。 它还要求防火墙凋谢 9418 端口,然而企业防火墙个别不会凋谢这个非标准端口。 而大型的企业防火墙通常会封闭这个端口。
该协定在理论实际中应用也比拟少,不做具体理解。
详情见Git的根底概念。Git文件的四种传输协定。
2、Windows应用http协定
2.1 个别github、gitee这样开源托管的网站都能够应用http协定。
2.2 革除本地缓存的git账户和明码,托管在windows凭证中。
操作门路:控制面板->用户账户->凭据管理器->治理Windows凭证->Windows凭据,逐个清理。
2.3再次clone我的项目,提醒输出用户名和明码,正确输出后会再次保留到Windows凭证中。
3、Windows多用户SSH配置
3.1、公司个别会搭建gitlab作为git服务故而应用ssh协定拜访。
像咱们公司部门有个gitlab,起初公司也有gitlab,迁徙过程中,有并存期间,就须要多用户配置。
3.2、配置步骤
3.2.1、本地生成公钥
3.2.2、gitlab上配置公钥
3.2.3、本地配置config文件
3.2.4、反复上述配置
援用记录
Git HTTPS和SSH的区别
Git的根底概念。Git文件的四种传输协定
Windows设置多个git账号,进行多用户配置
10.6 Git 外部原理 - 传输协定
GitLab克隆代码将SSH切换为HTTPS形式