window下配置SSH连接GitHub、GitHub配置ssh key
window下配置SSH连接GitHub、GitHub配置ssh key
此经验分两部分:
第一部分介绍:在windows下通过msysGit(Git for windows、Git Bash)配置SSH Keys连接GitHub。
第二部分介绍:在GitHub上创建仓库,在本地创建项目,然后将本地项目通过SSH提交到GitHub仓库中。
工具/原料
- GitHub
- msysGit(git for windows、Git Bash)
msysGit配置SSH访问GitHub
- 1
检查本机是否有ssh key设置
$ cd ~/.ssh 或cd .ssh
如果没有则提示: No such file or directory
如果有则进入~/.ssh路径下(ls查看当前路径文件,rm * 删除所有文件)

- 2
1、使用Git Bash生成新的ssh key。
$ cd ~ #保证当前路径在”~”下
$ ssh-keygen -t rsa -C "xxxxxx@yy.com" #建议填写自己真实有效的邮箱地址
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/xxxx_000/.ssh/id_rsa): #不填直接回车
Enter passphrase (empty for no passphrase): #输入密码(可以为空)
Enter same passphrase again: #再次确认密码(可以为空)
Your identification has been saved in /c/Users/xxxx_000/.ssh/id_rsa. #生成的密钥
Your public key has been saved in /c/Users/xxxx_000/.ssh/id_rsa.pub. #生成的公钥
The key fingerprint is:
e3:51:33:xx:xx:xx:xx:xxx:61:28:83:e2:81 xxxxxx@yy.com
*本机已完成ssh key设置,其存放路径为:c:/Users/xxxx_000/.ssh/下。
注释:可生成ssh key自定义名称的密钥,默认id_rsa。
$ ssh-keygen -t rsa -C "邮箱地址" -f ~/.ssh/githug_blog_keys #生成ssh key的名称为githug_blog_keys,慎用容易出现其它异常。

- 3
添加ssh key到GItHub
3.1 登录GitHub系统;点击右上角账号头像的“▼”→Settings→SSH kyes→Add SSH key。

- 4
3.2 复制id_rsa.pub的公钥内容。
1) 进入c:/Users/xxxx_000/.ssh/目录下,打开id_rsa.pub文件,全选复制公钥内容。
2) Title自定义,将公钥粘贴到GitHub中Add an SSH key的key输入框,最后“Add Key”。

- 5
配置账户
$ git config --global user.name “your_username” #设置用户名
$ git config --global user.email “your_registered_github_Email” #设置邮箱地址(建议用注册giuhub的邮箱)

- 6
测试ssh keys是否设置成功。
$ ssh -T git@github.com
The authenticity of host 'github.com (192.30.252.129)' can't be established.
RSA key fingerprint is 16:27:xx:xx:xx:xx:xx:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)? yes #确认你是否继续联系,输入yes
Warning: Permanently added 'github.com,192.30.252.129' (RSA) to the list of known hosts.
Enter passphrase for key '/c/Users/xxxx_000/.ssh/id_rsa': #生成ssh kye是密码为空则无此项,若设置有密码则有此项且,输入生成ssh key时设置的密码即可。
Hi xxx! You've successfully authenticated, but GitHub does not provide shell access. #出现词句话,说明设置成功。
END
将本地项目通过SSH push到GitHub
在github上创建一个示例仓库,如:test ssh key。

复制test ssh key的ssh路径。

本地创建项目
1) 创建目录
$ mkdir test
$ cd test
2) 初始化
$ git init
3) 创建hello.md文件
$ echo "这是一次测试test ssh key" > hello.md
4) 提交到本地
若出现如上warning提示则重新提交一次即可。
$ git add . #提交当前目录下所以文件
$ git commit -m "add hello.md" #提交记录说明
5) 提交到github
$ git remote add origin ‘粘贴复制test ssh key的ssh路径’ #
$ git push -u origin master
Enter passphrase for key '/c/Users/hgpin_000/.ssh/id_rsa': #ssh key设置密码故此需要输入密码

- 4
刷新test ssh key仓库,查看hello.md。(完)
END
注意事项
- 经验适用于win7、win8.1、win10。
配置Github SSH Key成功后,就可以通过如下命令访问你自己的仓库,命令格式如下:
1.git clone git@github.com:username/repositiory.git
或者使用https地址进行访问
2.git clone https://username:password@github.com/username/repositiory.git
window下配置SSH连接GitHub、GitHub配置ssh key的更多相关文章
- Window下使用Xshell连接VirtualBox中CentOS SSH最佳实践
网上已经有非常多讲怎样连接VMware的文章.可是针对一些可能遇到的细节没有讲全. 这里会有一个非常 实际的样例,附带全部软件的链接,保证成功. 最佳实践什么的都是骗人的. 1.安装VirtualBo ...
- Qt在window下的环境变量PATH的配置
Qt在window下的环境变量PATH的配置 路劲: C:\Qt\Qt5.6.0\5.6\mingw49_32\bin C:\Qt\Qt5.6.0\Tools\mingw492_32\bin 发布Qt ...
- kettle通过SSH连接Mysql数据库(SSH隧道)
kettle通过SSH连接Mysql数据库(SSH隧道) Kettle无法直接连接使用SSH通道的MySQL,通过SSH隧道(推荐)或者需要借助工具PuTTY(不用时需要注销不推荐),具体操作如下所示 ...
- 不能ssh连接ubuntu linux 服务器 secureCRT不能ssh连接服务器 不能远程ssh连接虚拟机的ubuntu linux
我是用的是secureCRT,远程连接我的虚拟机里面的ubuntu 直接报错,连接不上 1,先分别在windows上ipconfig和ubuntu上ifconfig下 互ping一下,是可以ping通 ...
- xshell ssh连接linux时提示ssh服务器拒绝了密码
用Xshell root连接时显示ssh服务器拒绝了密码,应该是应该是sshd的设置不允许root用户用密码远程登录 修改 /etc/ssh/sshd_config文件,注意,安装了openssh才会 ...
- ssh连接远程服务器出现Host key验证失败的解决方案
原因可能是云服务器重装过,解决方法是找到提示的know_hosts文件,将报错的那一行的秘钥删掉即可.
- windows下配置VSCode免密SSH连接Linux机器
先决条件 Windows下安装openssh软件(win10自带,可以不用搞) 从官网下载最新版本默认安装即可 VSCode安装插件 VSCode官方市场获取两个插件:"Remote - S ...
- Jmeter配置通过SSH连接的mysql数据库
jmeter连接配置mysql数据库时,如果数据库服务器没有通过ssh连接,则只需要添加配置相应的jdbc参数就可以了.如果数据库服务器是通过SSH连接的,则需要通过中间远程连接工具来登录,此处使用的 ...
- window下nginx负载均衡简单配置-----权重的实现
下面介绍一个在window下的nginx的负载均衡配置. 需要你在你的电脑上跑两个tomcat.一个8080,一个9080. 需要一个nginx服务器. 需要修改本机的host 注意:我们这里配置不会 ...
- Ubuntu下ssh连接在服务端显示图形界面
Ubuntu下ssh连接在服务端显示图形界面 step1 安装ssh服务 服务端安装运行ssh,在终端运行命令如下: sudo apt-get install openssh-server 在客户端安 ...
随机推荐
- Confluence 6 使用 Velocity 宏
当编辑自定义 Decorator 模板文件的时候,有一些宏可被用来定义页面中复杂或者多变的内容,例如菜单,链接等.你可以插入这些宏到你的模板中.更多的信息,请参考Working With Decora ...
- 【JS】中ajax的URL中包含中文,后台接收乱码
[问题]ajax提交get请求,url中参数包含中文,后台接收到显示乱码. [解决方案]前台: function getSiteInfoByName(siteName){ var res; $.aja ...
- NIO(三)
使用直接缓冲区完成文件的复制(内存映射文件) package com.cppdy.nio; import java.nio.MappedByteBuffer; import java.nio.chan ...
- MongoDB的简单操作
一.简介 二.MongoDB基础知识 三.安装 四.基本数据类型 五.增删改查操作 六.可视化工具 七.pymongo 一.简介 MongoDB是一款强大.灵活.且易于扩展的通用型数据库 MongoD ...
- laravel 更新
public function update(Request $request, ResponseFactoryContract $response) { $user = $request->u ...
- Python集合(set)
Python中的集合同数学中的集合概念类似,也是用于保存不重复的元素.他有可变集合(set),和不可变集合(frozenset);可变集合(set)是无序的可变的. 创建集合 直接使用{}创建 set ...
- shell 批量替换内容
一.查找/data/www/vhosts/WOStest2_YiiFramework/console/sh/下所有.sh文件 把/data/www/vhosts/WOS_YiiFramework 替换 ...
- Windows批处理命令用法
阅读下面文字需要一定的dos基础概念,象:盘符.文件.目录(文件夹).子目录.根目录.当前目录 每个命令的完整说明请加 /? 参数参考微软的帮助文档可以看到,在 /? 帮助里,"命令扩展名& ...
- String 类的实现(2)引用计数与写时拷贝
1.引用计数 我们知道在C++中动态开辟空间时是用字符new和delete的.其中使用new test[N]方式开辟空间时实际上是开辟了(N*sizeof(test)+4)字节的空间.如图示其中保存N ...
- Android Studio启动时出现unable to access android sdk add-on list
目录 Android Studio First Run 检测 Android SDK 及更新,由于众所周知的原因,我们会「Unable to access Android SDK add-on lis ...