window下配置GIT@OSC/Github等的SSH连接

引言

我们放在GIT库的项目,遇到pull或者push等操作的时候,经常需要输密码

git-shh-1

这未免太过繁琐,而配置SHH链接可以免除这样的烦恼,可谓不可不配,过程也非常的简单,几个命令即可
开源中国和Github的配置方式其实都是一样的,没什么区别,这里以开源中国为例

环境

首先你必须要有一个可以运行git命令的工具

  1. android studio自带的Terminal
  2. windows下的Git Bash
  3. 其他能响应Git命令的命令行
    Git For Windows2.7.2 - 29.4MB

检查本机ssh key

先看下你本机的ssh key有没有

$ cd ~/.ssh 如果没有则提示: No such file or directory 如果有则会进入~/.ssh路径下

如果存在即可以用rm命令删除掉,我们重新生成一个
ls #查看当前路径文件 rm * #删除所有文件

生成本地shh key

切回去根目录(~)
`$ cd ~

#保证当前路径在”~”下
`

生成rsa-key
`$ 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,慎用容易出现其它异常。

git-shh-2

到网站上添加这个key

打开刚刚生成的id_rsa.pub,复制所有内容,到git.oschina.net,个人设置,SSH公钥中,粘贴进去
$ cd .ssh #切换到.ssh目录下 start . #用文件管理器打开当前目录

配置账户

$ git config --global user.name “your_username” #设置用户名 $ git config --global user.email “your_Email” #设置邮箱地址

测试ssh keys

`#开源中国
$ ssh -T git@git.oschina.net

#github
$ ssh -T git@github.com

#操作结果:
The authenticity of host ‘xxxxxxxx (xxxxx)’ 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 ‘xxxxxx’ (RSA) to the list of known hosts.
Enter passphrase for key ‘/c/Users/xxxx/.ssh/id_rsa’:

#生成ssh kye是密码为空则无此项,若设置有密码则有此项且,输入生成ssh key时设置的密码即可。
Hi xxx!

#出现词句话,说明设置成功。
`

git-shh-3

至此,SSH KEYS 配置完成,然后就是使用 SSH URL 来导出项目,这个属于GIT就不多讲了

但是还要补充一个,就是之前的项目使用的是https,是不会自动使用ssh key的,如何切换到现在的ssh方式呢?

切换分支URL为ssh方式

使用 git remote 命令

git remote set-url origin 你的项目ssh地址

Complete ,Have A Nice Day!