为了便于访问远程仓库,各个协作者将自己的本地的项目内容推送到远程仓库中,使用

SSH keys 验证github的好处:不用每次提交代码时都输入用户名和密码。

如果SSH key没有添加到github帐号设置中,系统会报下面的错误:

Permission denied (publickey).

fatal: The remote end hung up unexpectedly

这时需要在本地创建SSH key,然后将生成的SSH key文件内容添加到github帐号上去。

创建SSH key的方法如下:

桌面——右键单击——Git Bash Here,执行下面命令:

ssh-keygen

接着系统会提示输入文件保存位置等信息,连续敲三次回车即可,生成的SSH key文件保存在“~/.ssh/id_rsa.pub”中,

然后用编辑工具(notepad++)打开这个id_rsa.pub 文件,拷贝这个id_rsa.pub文件的所有内容。

将它黏贴到github帐号管理中的添加SSH key界面中。

打开github帐号管理中的添加SSH key界面的步骤如下:

1. 登录github

2. 点击右上方头像,点击下拉的 settings属性

3. 选择 SSH key

4. 点击 Add SSH key /  New SSH key

在出现的界面中填写SSH key的名称,可任意填一个你自己喜欢的名称即可,然后将上面拷贝的“~/.ssh/id_rsa.pub”文件内容粘帖到key一栏,在点击“add key”按钮就可以了。

添加过程github会提示你输入一次你的github密码(就是登陆密码啦)

如下所示:

接着打开git ,测试连接是否成功

$ ssh -T git@github.com

如果提示:Hi XXXX !  You've successfully authenticated, but GitHub does not provide shell access. 说明你连接成功了。(有时候反应比较慢,耐心等一下下。)

有时候会提示错误,如下所示:输入“yes”即可。

有时候,设置完ssh keys 后Push时还需要输入用户名和密码,原因是:

因为你用的是https而不是ssh。
你可以更新一下origin:

 git remote remove origin
git remote add origin git@github.com:Username/Your_Repo_Name.git

之后你还需要重新设置track branch,比如:

 git branch --set-upstream-to=origin/master master

对于HTTPS方式,你可以在~/.netrc文件里设定用户名密码,不过这样的风险在于密码是明文存放在这个文件里的,比较容易泄露

 machine github.com
login Username
password Password

添加完成后再次执行git clone就可以成功克隆github上的代码库了。

为Github 托管项目的访问添加SSH keys的更多相关文章

  1. Android Studio利用GitHub托管项目

    自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onL ...

  2. 为github帐号添加SSH keys

    为github帐号添加SSH keys 2012-05-26 00:05 34279人阅读 评论(6) 收藏 举报 ssh文本编辑gitvim工具up 使用git clone命令从github上同步g ...

  3. 为github帐号添加SSH keys(Linux和Windows)

    文章转自:https://blog.cofface.com/archives/406.html/2 一.Linux增加ssh keys方法: 使用git clone命令从github上同步github ...

  4. window下git,TortoiseGit安装,以及和github托管项目

    下载地址:http://msysgit.github.io/,安装时最好是先装git,再安装TortoiseGit. 一.git安装 1.第一步 2.第二步 3.第三步 4.第四步 5.第五步 6.第 ...

  5. 添加SSH keys到github帐号

    使用git clone命令从github上同步github上的代码库时,如果使用SSH链接(如我自己的esesgrid项目:git@github.com:hmilycc/esesgrid.git),而 ...

  6. 为GitLab帐号添加SSH keys并连接GitLab

    https://blog.csdn.net/xyzchenxiaolin/article/details/51852333 为github帐号添加SSH keys使用git clone命令从GitLa ...

  7. 使用 Git 和 GitHub 托管项目源码

    这段时间想研究下,GitHub 的使用,但是桌面版下载速度贼慢(貌似需要FQ) 好在 廖雪峰 老师有一个 Git 的教程,也可以和 GitHub 配合使用 廖雪峰老师的Git教程:http://www ...

  8. GitHub 添加 SSH keys

    首先在本地创建 SSH Keys $ ssh-keygen -t rsa -C "18817801185@163.com" 后面的邮箱即为 github 注册邮箱,之后会要求确认路 ...

  9. GitHub托管项目

    1.进入Repositories->点击 new repositories; 2.输入Repository name 直接创建项目: 3.记录你的项目地址,如:https://github.co ...

随机推荐

  1. 内存及字符串操作篇strlen strchar strcmp strcoll strcpy strdup strstr strtok strspn strrchr bcmp bcopy bzero index memccpy memset

    bcmp(比较内存内容) 相关函数 bcmp,strcasecmp,strcmp,strcoll,strncmp,strncasecmp 表头文件 #include<string.h> 定 ...

  2. C柔性数组

    柔性数组成员 柔性数组 .允许结构中包含一个大小可变的数组,sizeof返回的这种结构大小不包括柔性数组的内存. .包含柔性数组成员的结构要使用malloc()函数进行内存的动态分配.分配的内存大于结 ...

  3. nginx缓存和flask_cache

    1.使用flask_cache的缓存功能simple模式时,直接启用可以使用,但是如果中间使用nginx代理时,就没有效果了 2.那就直接使用nginx缓存机制 http://blog.csdn.ne ...

  4. 新买的mac笔记本,发现vi编辑器没有颜色的解决方案

    新买的mac笔记本,发现vi编辑器没有颜色的解决方案 我在网络上找了一些资料,发现都有些问题,尤其是一些让修改根目录上的文件,发现根本无法修改. 但是在网络上找到了这篇文章: http://super ...

  5. Observer 观察者模式 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  6. Div+Css实现段落首行缩进两个字符(text-indent标签)

    段落前面空两个字的距离,不要再使用空格了,用CSS实现段落首缩进两个字符.应该使用首行缩进text-indent.text-indent可以使得容器内首行缩进一定单位.比如中文段落一般每段前空两个汉字 ...

  7. android 下的网络图片加载

    Android图片的异步加载,主要原理: 加载图片时先查看缓存中时候存在该图片,如果存在则返回该图片,否则先加载载一个默认的占位图片,同时创建一个通过网络获取图片的任务并添加,任务完成后放松消息给主线 ...

  8. 算法(第四版)学习笔记之java实现希尔排序

    希尔排序思想:使数组中随意间隔为h的元素都是有序的. 希尔排序是插入排序的优化.先对数组局部进行排序,最后再使用插入排序将部分有序的数组排序. 代码例如以下: /** * * @author seab ...

  9. NSURLSession 学习笔记

    NSURLSession 学习笔记 一:NSURLSession 类似之前的NSURLConnection, 可配置每个session的 cookie,证书等网络连接配置信息 NSURLSession ...

  10. iOS \U7ea2 乱码 转换

    通常网络请求的数据,如果不做处理在输出时显示是 \U 之类的编码的: 不需要导入别的类库解决方法 - (NSString *)replaceUnicode:(NSString *)unicodeStr ...