这样做的好处就是一旦搭建好安全通道,以后使用git pull, git push都无需再次输入密码,就算github账号修改了密码,也不需要做任何操作。 (当然也适用于gitee)
原理非常简单,就是在客户端创建ssh公钥,然后在github将此公钥加入白名单,OK!
1. 创建公钥
linux创建公钥非常简单,首先可以查看本机是否已经有公钥,一般位于目录 ~/.ssh/,如果没有就创建
$ cd ~$ ssh-keygen -t rsa -C "your_email@youremail.com"
接着一路回车即可,如果需要考虑安全因素可输入密码
公钥: id_rsa.pub 私钥: id_rsa windows创建公钥参考文章最后
2. 添加公钥到github白名单
首先查看公钥,并且复制一下
$ cat .ssh/id_rsa.pub
然后进入github设置页面,找到 SSH and GPG keys/SSH公钥,点击添加公钥
3. 修改git的remote url为ssh形式
git的url有2种形式,此时需要使用ssh形式,而不是https,使用命令 git remote -v 可查看,如需修改为ssh形式则使用以下命令
$ git remote set-url origin git@github.com:someaccount/someproject.git
此时再次使用git pull, git push会发现不再需要输入密码
4. windows如何生成ssh
首先确保windows安装了Git Bash,打开以后,键入以下命令即可
$ cd ~$ ssh-keygen -t rsa -C "your_email@youremail.com"
接着一路回车即可
参考:http://www.cnblogs.com/superGG1990/p/6844952.html