Git主要使用4种协议传输数据:本地协议,SSH协议,Git协议和HTTP/S协议。

SSH协议是最为常用的一种,正式介绍SSH之前,简要说明一下其它协议。

本地协议(file://)

本地协议的优点就是简单,缺点是访问不便。

Git协议

这是一个包含在Git软件包中的特殊进程,它会监听一个提供类似于SSH服务的特定端口(9418),而无需任何授权。它的优点是它是传输速度最快的一个协议。缺点是正因为无授权,故这种协议没有写的权限,只有读的权限。另外这种协议是最难架设的协议,要求有单独的守护进程,需要定制。

HTTP/S协议

HTTP/S协议的优美之处在于假设简便,不需要占用过多的资源,另外HTTP是最常见的协议,大部分防火墙都会允许其通信。缺点是效率低,时间长。

SSH协议

SSH协议是最常见的一个协议,因为大部分环境都允许了SSH协议对服务器的访问,即使没有,架设这个协议也比较方便。另外,SSH协议也是唯一一个同时支持读写操作的网络协议。SSH的好处因此显而易见,假设简单,可读写,访问安全。缺点是不可进行匿名的访问。所以只有取得权限才能访问,没法利用此协议对公传输。

生成SSH公钥

关于SSH-key的文章,详情看github的这部分介绍

以下简单说明怎样实现SSH公钥的生成,导入以及访问。

  1. 生成:ssh-keygen -t rsa -b 4096 -C "your_email@example.com",把邮箱换成自己的邮箱

  2. 控制台中会提示是否需要附加口令,如果需要,直接输入两遍口令就可以生成公钥了(默认的公钥私钥的存放位置在~/.ssh目录)

  3. 进入~/.ssh目录,用文本编辑工具打开.pub格式的公钥,复制里面的内容到,在远程git仓库的设置里粘贴公钥即可将公钥导入到远程git仓库

  4. 验证公钥是否有效:ssh -T git@github.com。(coding.net的git地址是git@git.coding.net),如果有效,控制台中将会给出验证成功的信息。

Git的SSH-key生成、导入及使用的更多相关文章

  1. Git 中 SSH key 生成步骤

    由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以必须要让github仓库认证你SSH key,在此之前,必须要生成SSH key. 第1步:创建SSH Key.在windows下 ...

  2. git ssh key生成

    重装系统后,需要重新安装git,ssh key便是遇到的其中一个问题,具体解决办法如下: 1.安装好git客户端后,查看本地是否有.ssh文件,命令如下:mkdir ~/.ssh 2.如果没有该文件, ...

  3. git配置SSH Key,上传本地代码至github

    git配置全局的name和email git config --global user.name "name" git config --global user.email &qu ...

  4. Git配置SSH Key

    最近看到很多人在配置Git时,遇到很问题,网上教程千篇一律.这儿自己单独记录一份. Git配置SSH Key 1.检查本机是否有ssh key设置,切换到.ssh目录 $ cd ~/.ssh 或cd ...

  5. 一台电脑上配置多个git的ssh key

    前几天公司的代码库全部迁移到了阿里云上,在配置git的ssh key的时候遇到了一个问题,那就是自己的密钥在添加时提示已经存在,原来是自己的个人账号上已经添加过这个密钥了,公司分配的账号就不能再添加这 ...

  6. git 配置ssh key

    第一次生成 ssh key 进入ssh目录  cd ~/.ssh,再输入:ls ,查看文件,如果有.pub的文件,说明已有ssh key 如果没有, 则生成秘钥:ssh-keygen -t rsa - ...

  7. ssh key生成

    Mac电脑用终端生成SSH key 访问自己的Github 字数684 阅读427 评论4 喜欢15 前言:最近有不少刚刚使用github管理代码的开发者或者新手码农在网上 问我如何关联自己的gith ...

  8. Git使用ssh key

    生成ssh key步骤 这里以配置github的ssh key为例: 1. 配置git用户名和邮箱 git config user.name "用户名" git config us ...

  9. git 配置 .ssh key

    1.安装git软件: 2.打开本地git bash,使用如下命令生成ssh公钥和私钥对: ssh-keygen -t rsa -C 'xxx@xxx.com'    然后一路回车(-C 参数是你的邮箱 ...

  10. 个人在git配置SSH Key遇到的问题以及解决方案

    第一次用git上传代码到github,在这过程中遇到很多问题,在输入git命令的时候都小心翼翼,因为一不小心感觉就会出错.. 英语不好..在敲入git命令过程中各种错误提示勉强翻译下才看得懂 最后输入 ...

随机推荐

  1. php语法基础(相比C语言)

    前言 php的语法跟C语言很类似,相信有一定C的基础的人学起来会非常快. 本篇主要介绍php相比C语言有差异的地方 php代码标记 ASP标记:<% 代码 %> 短标记:<? 代码 ...

  2. 如何让Excel单元格中的名字分散对齐

    1 操作方式 开始->对齐方式->对齐->水平对齐->分散对齐(缩进) 2 优势 不会破坏数据的有效性

  3. 【阿里云服务器】外网无法访问tomcat下部署的项目

    问题提出:在ESC实例上部署了jdk和tomcat(略,上云了,上云了),启动tomct后,内网可以访问8080端口,外网无法访问8080. 系统环境:winsdow 2008 企业版 解决方案: 在 ...

  4. 分布式计算课程补充笔记 part 2

    ▶ 并行计算八字原则:负载均衡,通信极小 ▶ 并行计算基本形式:主从并行.流水线并行.工作池并行.功能分解.区域分解.递归分治 ▶ MPI 主要理念:进程 (process):无共享存储:显式消息传递 ...

  5. Maven私服(Nexus)资源上传下载

    1.settings.xml (向私服上传资源需要) <!-- Snapshot包的管理/Releases包的管理/第三方包管理--> <server> <id>l ...

  6. 简单快捷使用Git

    1.简介和安装Git是世界上目前最先进的分布式版本控制系统.安装:https://git-for-windows.github.io下载.设置姓名和email:git config --global ...

  7. mybatis sql参考

    参考mybatis sql: <select id="xxx" resultType="com.xxxx.xxx.vo.xx.xx" parameterT ...

  8. [INet] WebSocket 数据收发的详细过程

    WebSocket 和 HTTP 相似,只是一个应用层协议,对下层透明,所以不涉及 TCP/IP. 由于浏览器支持了 WebSocket,所以在用 JS 写客户端的时候,是无需考虑数据的编码解码的. ...

  9. Object.create() vs new SomeFunction() in javascript

    Object.create builds an object that inherits directly from the one passed as its first argument. Wit ...

  10. tomcat双击startup.bat启动时闪退

    tomcat之前用的好好地没有问题,今天重启一下就发现双击startup.bat一闪而过,接着就没有任何动静了,tomcat无法启动啦? 于是网上搜了一堆tomcat闪退的解决办法,其中有说是没有读取 ...