git是分布式的代码管理工具,远程的代码管理是基于ssh的,所以要使用远程的git则需要ssh的配置。简单的说,Git - 版本控制工具;Github是一个网站,提供给用户空间创建git仓储,保存用户的一些数据文档或者代码等;GitLab是基于Git的项目管理软件

首先,使用代码管理工具把本地的代码上传到服务器时需要加密处理,加密传输的算法有很多种,git可使用rsa,rsa要解决的一个核心问题是,如何使用一对特定的数字,使其中一个数字可以用来加密,而另外一个数字可以用来解密。这两个数字就是你在使用git和github,gitlab的时候所遇到的public key也就是公钥以及private key私钥。

其中,公钥就是那个用来加密的数字,这也就是为什么你在本机生成了公钥之后,要上传到github的原因。从github发回来的,用那公钥加密过的数据,可以用你本地的私钥来还原。如果你的key丢失了,不管是公钥还是私钥,丢失一个都不能用了,解决方法也很简单,删除原有的key,重新再生成一次,然后在github.com里再设置一次就行

 
  在个人电脑生成ssh密钥后,会同时生成一个公开密钥和一个私有密钥,默认情况下在用户主目录下的.ssh目录中,密钥为id_rsa,公开密钥为id_rsa.pub。
 
      密钥和公开密钥是共同使用的,协同开发中,一般会将公钥配置在服务器中,这样方便经常登录,也不需要输入密码,这是现在集群和各种云平台常用的登录方式,密钥在本地不被泄漏就非常安全。
 
  

步骤1.检查是否已经存在SSH Key

打开电脑终端,输入以下命令:

ls -al ~/.ssh    

步骤2. 生成/设置SSH Key

继续上一步可能出现的情况

(1)情况一:终端出现文件id_rsa.pub 或 id_dsa.pub,则表示该电脑已经存在SSH Key,此时可继续输入命令:

pbcopy < ~/.ssh/id_rsa.pub     

这样你需要的SSH Key 就已经复制到粘贴板上了,然后进行步骤3

(2)情况二:终端未出现id_rsa.pub 或 id_dsa.pub文件,表示该电脑还没有配置SSH Key,此时需要输入命令:

ssh-keygen -t rsa -C "your_email@example.com"   
(注意,这里的  your_email@example.com  是你自己的邮箱,选一般的常用的邮箱即可,笔者当时用的是腾讯企业邮箱,就出现了一点小问题,所以不常用的邮箱一般不推荐)         默认会在相应路径下(/your_home_path)生成id_rsa和id_rsa.pub两个文件,此时终端会显示:
Generating public/private rsa key pair. 
    Enter file in which to save the key (/your_home_path/.ssh/id_rsa): 

连续回车即可,也可能会让你输入密码,密码就是你的开机密码 

 
此时再输入命令:ls -al ~/.ssh    就会出现id_rsa.pub 和 id_dsa.pub两个文件,然后重复情况一的步骤即输入以下命令再进行步骤3即可:
 
pbcopy < ~/.ssh/id_rsa.pub

步骤3、将SSH Key添加到GitLab中

打开GitLab,  登录,进入项目,右侧Settings--Repository--Deploy Keys--输入title、key 点击“Add key"即可。

Gitlab,Mac下生成SSH Key222的更多相关文章

  1. Gitlab,Mac下生成SSH Key

      git是分布式的代码管理工具,远程的代码管理是基于ssh的,所以要使用远程的git则需要ssh的配置.简单的说,Git - 版本控制工具:Github是一个网站,提供给用户空间创建git仓储,保存 ...

  2. mac下生成ssh key

    ssh -v usage: ssh [-1246AaCfGgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec] [-D [bind_address: ...

  3. mac下生成ssh keys 并上传github仓储

    使用github仓储需要本机生成一个公钥key 添加到自己的git账户SSH keys中   mac 生成方法:   1. 打开终端 输入   ssh-keygen 然后系统提示输入文件保存位置等信息 ...

  4. Mac 下配置 SSH 免密码安全登录

    Win下个人常使用 SecureCRT ,Mac 下感觉 SecureCRT 并不好使,常用 iTerm2+zsh 搭配使用.A连接B 无密码登陆,则A上面执行 ssh-keygen 一路回车,把 ~ ...

  5. MAC下配置ssh让SourceTree通过秘钥访问远程仓库

    问题描述 由于TortoiseGit没有MAC版本,我们使用了SourceTree来替代. 在帮同事解决Mac下的Git的时候,碰到一个问题:SourceTree无法使用ssh方式提交代码,这是由于没 ...

  6. 关于Mac下的SSH客户端iterm2等配置

    linux后台开发的同学们晓得,在windows下有xshell\securecrt这样优秀的ssh客户端软件.mac下查找了下,有securecrt mac版,网上也有破解的,试用了一段时间,一个问 ...

  7. Mac下的SSH插件(默认自带)

    Mac下默认自带,直接通过终端输入ssh获取更多的参数帮助.

  8. Mac怎么生成.ssh文件

    可使用如下命令生成 1 ssh-keygen -t rsa 因为mac系统也是从unix基础上演变过来的,所以很多核心的东西也是与unix相通的. 1.-t 是指定加密参数为ras,默认是dsa 2. ...

  9. Mac下使用SSH(密钥)访问Github

    1,终端中输入:cd ~/.ssh 如果出现 -bash: cd: /Users/glamor/.ssh: No such file or directory,说明你之前没有用过.直接执行第二步. 如 ...

随机推荐

  1. 软件素材---linux C语言:向文件末尾进行追加数据

    void AppendDataToFile(char* filePath, char* msg) { // 以附加方式打开可读/写的文件, 如果没有此文件则会进行创建,然后以附加方式打开可读/写的文件 ...

  2. ROS安装,配置

    ROS最好安装在Ubuntu系统,因为ROS目前在其他的系统中都是试验性的 ! <Learning ROS for Robotics Programming-- second Edition&g ...

  3. Ribbon学习笔记

    微服务的概念: Ribbon默认的是轮询的算法:   @LoadBalanced @EnableEurekaClient Irule是根据 Ribbon默认(轮询)的7中负载均衡的算法: 修改默认的R ...

  4. 【转帖】如果进入CPU的世界,时间会是怎样的?

    如果进入CPU的世界,时间会是怎样的? 2018-02-26 20:52:46 world6 阅读数 1295更多 分类专栏: 网络 缓存服务 架构   版权声明:本文为博主原创文章,遵循CC 4.0 ...

  5. SSRS Reporting Service安装与部署

    安装与部署SSRS步骤 什么是SSRS SQL Server Reporting Serivces(SSRS) 是一种强大的报表设计开发工具或者说是服务,它提供了一系列本地工具和服务,用于创建.部署和 ...

  6. cesium 水面、淹没 效果

    水面效果 参考: http://cesiumcn.org/topic/158.html http://api.rivermap.cn/cesium/rivermap/map.html https:// ...

  7. 初始化一个React项目(TypeScript环境)

    React将由三部分组成,其中,Redux是应用状态管理服务,React-Router用于路由映射,React View用于显示界面. 我们使用Facebook推荐的create-react-app来 ...

  8. Java设计模式:23种设计模式(转)

    单例(Singleton)模式:某个类只能生成一个实例,该类提供了一个全局访问点供外部获取该实例,其拓展是有限多例模式. 原型(Prototype)模式:将一个对象作为原型,通过对其进行复制而克隆出多 ...

  9. PB笔记之导入、导出组件

    导入组件 导出组件

  10. 关于lock和synchronized的选择

    这里不介绍具体用法,介绍lock和synchronized的不同从而做出选择 1.lock是一个接口,而synchronized是java中的一个关键字,synchronized是内置的语言实现. 2 ...