GitHub设置使用SSH Key的好处就是可以使用SSH连接,并且提交代码的时候可以不用输入密码,免密提交。

生成SSH Key

这里我们使用PuTTYgen来生成公钥(Public Key),私钥(Private Key)和PuttyKey。在使用PuTTYgen之前,你需要先安装TortoiseGit

先来简单说明一下要生成的这几个公钥。

公钥(Public Key)

这个是公开的,可以告诉别人的,要被添加到GitHub上面的。

私钥(Private Key)和PuttyKey

这个是私有的,要保存好的,不能告诉别人,只能自己使用的。使用这个私有KEY就可以访问你的GitHub了。

PuTTYgen

在开始菜单中找到PuTTYgen,并打开:

点击生成,然后在Key区域随意移动鼠标,直到Key生成完毕:

将公钥复制下来,如果要保存,可以点击Save public key把它保存起来,这里一定不要关闭PuTTYgen工具,因为一会还要用私钥:

登录你的GitHub,并进入设置:

进入SSH and GPG keys菜单,并点击New SSH key

输入名称,并粘贴刚才复制的公钥,然后再点击Add SSH key进行添加:

这里会要求你输入密码进行安全验证,确认密码以后就添加成功了:

接下来我们就可以使用私钥来拉取和提交你的个人仓库了,有两种方式:

  • TorotiseGit + PuttyKey
  • Git Bash + SSH Key

要注意的是,虽然PuttyKey和SSH Key都是私有KEY,但它们的格式是不一样的,所以要注意使用正确的KEY。

TorotiseGit + PuttyKey

首先,我们需要把PuttyKey保存起来,回到刚才的PuTTYgen工具,点击Save private key,进行保存,如果要使用密码保护,可以在红框处输入密码:

不输入密码的话,会弹出一个提示,确认是不是不要密码保护,点Yes就可以保存了。

输入名称,点击保存:

复制你的仓库地址,注意切换为SSH地址:

点击复制:

到目标文件夹, 鼠标右键,选择Git Clone

TortoiseGit会自动帮你填充好相应的地址和目录,注意选择刚才保存的Putty Key:

点击确定就可以开始Clone了:

Git Bash + SSH Key

接下来我们换一种方式,使用SSH,在Linux或者MAC下就可以这样使用命令来clone仓库。

首先,先保存SSH key,回到PuTTYgen工具,点击菜单Conversions>Export OpenSSH key,将PuttyKey转为SSH Key:

因为没有密码,还是会弹出确认提示,点击是就可以保存了:

到目标目录,鼠标右键,选择Git Bash Here,打开Git Bash:

输入命令:

ssh-agent bash

再输入命令ssh-add {SSH Key},可以直接将SSH Key文件拖进来,方便输入路径,回车就可以了。如果是有密码的,会在这时候要求你输入密码:

然后再使用 git clone命令就可以开始clone仓库了:

git clone git@github.com:SeriaWei/ZKEACMS.Core.git

https://github.com/SeriaWei/ZKEACMS.Core

GitHub设置使用SSH Key,用TortoiseGit进行Clone仓库的更多相关文章

  1. github入门:设置添加ssh key<转>

    GitHub是个分布式的版本控制库.github通过git使用,可以方便的记录代码版本. 通过github可以学习优秀的代码,可以改进提交其他项目中的bug,借助社区力量促进软件优化完善. 国内外大量 ...

  2. (转)github设置添加SSH

    很多朋友在用github管理项目的时候,都是直接使用https url克隆到本地,当然也有有些人使用 SSH url 克隆到本地.然而,为什么绝大多数人会使用https url克隆呢? 这是因为,使用 ...

  3. 解决GitHub未配置SSH key提示错误信息

    git push -u origin master Permission denied (publickey). fatal: Could not read from remote repositor ...

  4. github设置添加SSH

    很多朋友在用github管理项目的时候,都是直接使用https url克隆到本地,当然也有有些人使用 SSH url 克隆到本地.然而,为什么绝大多数人会使用https url克隆呢? 这是因为,使用 ...

  5. SSH连接GitHub并配置ssh key

    SSH连接GitHub并配置ssh key 配置git的ssh提交,主要需要以下三步: 1.设置Git的user name和email 2.生成ssh 3.配置git 的ssh key 一.设置Git ...

  6. (转)github设置添加SSH

    很多朋友在用github管理项目的时候,都是直接使用https url克隆到本地,当然也有有些人使用 SSH url 克隆到本地.然而,为什么绝大多数人会使用https url克隆呢? 这是因为,使用 ...

  7. github设置添加SSH(转载自:破男孩)

    注:本文来源于 破男孩 博客(http://www.cnblogs.com/ayseeing/p/3572582.html)能切实解决问题. 很多朋友在用github管理项目的时候,都是直接使用htt ...

  8. Jenkins配置git/github 插件的ssh key

    参考来源:http://jingyan.baidu.com/article/a65957f4f0acc624e67f9bc1.html 方式一:本地需要生成公私钥文件,git/github中新建ssh ...

  9. GitHub如何配置SSH Key

    https://github.com/xiangshuo1992/preload.git git@github.com:xiangshuo1992/preload.git 这两个地址展示的是同一个项目 ...

随机推荐

  1. 有几个Pass,对象就会绘制几次

    在每个SubShader内部可以包含多个,至少一个Pass.有几个Pass,对象就会绘制几次.在编写时我们应该尽量控制Pass的数量. 在Pass中包含Cg/HLSL程序片段,在其中编写vertex ...

  2. OC 线程操作 - GCD使用 -线程通讯, 延迟函数和一次性代码

    - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{ // [self downImag ...

  3. [leetcode]269. Alien Dictionary外星字典

    There is a new alien language which uses the latin alphabet. However, the order among letters are un ...

  4. Collections.shuffle()源码分析

    Java.util.Collections类下有一个静态的shuffle()方法,如下: 1)static void shuffle(List<?> list)  使用默认随机源对列表进行 ...

  5. jquery-jsonp插件解决跨域问题

    用jquery-jsonp插件解决ajax跨域问题,既可以实现ajax同样的请求效果,而且server服务端的相关代码也不用做任何改变. 代码如下: var url="http://loca ...

  6. Visual Studio宏

    MSVC++ 14.0 _MSC_VER == 1900 (Visual Studio 2015)MSVC++ 12.0 _MSC_VER == 1800 (Visual Studio 2013)MS ...

  7. 简单解决 Javascrip 浮点数计算的 Bug(.toFixed(int 小数位数))

    众所周知,Javascript 在进行浮点数运算时,结果会非预期地出现一大长串小数. 解决: 如果变量 result 是计算结果,则在返回时这样写,return result.toFixed(2): ...

  8. 通过命令更新git for windows

    git update-git-for-windows 参考: https://github.com/PanJiaChen/vue-element-admin/issues/24 https://sta ...

  9. 2018.10.19 NOIP训练 变化的序列(线性dp)

    传送门 f[i][j]f[i][j]f[i][j]表示后iii个对答案贡献有jjj个a的方案数. 可以发现最后a,ba,ba,b的总个数一定是n∗(n−1)/2n*(n-1)/2n∗(n−1)/2 因 ...

  10. 2018.09.23 关键网线(tarjan)

    描述 给出一个无向连通图,即在任一个点对间存在路径.有的点提供服务a, 有的点提供服务b .同一个点可能有两种服务类型.每个点必须与提供2种服务的点连通.如果一个边断掉,就可能出现有些点不能被服务到, ...