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. python:函数初始

    一.函数 1.函数初始:函数就是封装一个功能 2.函数名,函数体,关键字,函数的返回值 def 关键字,定义一个函数 my_len 函数名书写规则和变量一样 def 与函数名中间一个空格 函数名(): ...

  2. ssl协议相关

    <1> SSL版本 测试浏览器支持的SSL版本的网站: https://www.ssllabs.com/ssltest/viewMyClient.html 0xfefd    (DTLS ...

  3. android 开发 View _8_ 动态图片自定义View

    转载地址:https://blog.csdn.net/mengks1987/article/details/77770922 先来看下效果: 是不是有一种熟悉感,其实这种效果使用序列帧动画也是可以实现 ...

  4. py库: arrow (时间)

    arrow是个时间日期库,简洁易用.支持python3.6 https://arrow.readthedocs.io/en/latest/ arrow官网api https://github.com/ ...

  5. linux文件属性的10个字符各代表什么意思

    10个字符表示文件类别和权限,具体如下: 例: 第一个字符表示文件类别,代表的含义如下:-:普通文件d:目录文件b:块设备文件c:字符设备文件l:符号链接文件 后面9个字符代表3组访问权限:第1组的3 ...

  6. django 开发之前后端分离开发模式

    1. 什么是前后端分离开发的概念: 前端页面运行前端服务器上,负责页面的渲染(静态文件的加载)与跳转 后端代码运行在后端服务器上, 负责数据的处理(提供数据请求的接口) 2. 前后端分离开发碰到的问题 ...

  7. win7获取system32所有权

    (1)cmd ->  takeown /f  C:\Windows\System32* /r (2)右击system32文件夹属性 -> 安全 ->高级 ->所有者 —改为当前 ...

  8. git的简单命令

    git pull 拉下最新版本. git add . git commit 输入提交信息 esc返回 :wq保存 git push .git保存着当前仓库的信息.git bash here的时候,要确 ...

  9. 如何学习DeepLearning

    多年来,科学家们为了搞清楚神经网络的运行机制,进行了无数次实验.但关于神经网络的内在运行方式,目前还没有系统性的理论,没有具体的路线可以指引你获得更好的性能.简单地下载开源工具包直接使用并不能跑出很棒 ...

  10. thinkphp5.0 - Redis 实现秒杀

    首先,因为秒杀这个环节在商城项目中比较常见,最近写商城项目,碰到这个功能模块,于是就拿出来给大家分享一波. 难点:高并发的情况下,正常逻辑写的话数据库的库存会出现负数,对付这类问题有很多解决方案,我就 ...