为什么要用SSH
为了防止其他人未经授权将项目通过git bash 上传到github上,每一次上传都要输入github的用户名和密码。通过ssh公钥可以一劳永逸地解决这个问题。
准备工作
- Windows 平台
- github账户
- gitbash,可以在git bash for windows下载
步骤
- 打开GIT BASH
#为自己的github账户‘youremail@gmail.com’建立一个ssh公钥
ssh-keygen -t rsa -C 'ronnieshawn99@gmail.com'
接下来一直按回车,直到结束。所创建的SSH会出现在C:\Users\用户名.ssh目录下。
这时,依次输入以下几行代码`
#定位到刚刚创建的文件夹
cd ~/.ssh
#显示文件夹中的文件
ls
#将会看到 id_rsa 和 id_rsa.pub是已经创建好的文件,其中id_rsa是私钥而id_rsa.pub是公钥
$ ls
id_rsa id_rsa.pub
接下来需要添加SSH到SSH代理中
#启动SSH代理
eval "$(ssh-agent -s)"
#添加SSH到代理中
ssh-add ~/.ssh/id_rsa
复制SSH秘钥到剪贴板
cat ~/.ssh/id_rsa.pub | clip
#如果复制失败,那么输入以下代码在GIT BASH中手动复制
cat ~/.ssh/id_rsa.pub
接下来,打开Github
进入settings,点击添加新的 SSH Key并将剪贴板中的公钥复制进去
最后,
#确定SSH key是否已经与Github绑定了
ssh -T git@github.com
#应该要出现以下的结果
Hi RonnieShane99! You've successfully authenticated, but GitHub does not provide shell access.