通过ssh连接git操作
项目又一次从svn切换到git,而且要求使用安全协议ssh连接git。不管是个人还是组织,git上只负责导入公钥,而不会帮你生成。这里先说下怎么生成这个ssh的私钥和公钥。
首先,你得找到有ssh命令的环境,不管是windows还是unix的。假设我已经安装了远程连接到linux环境的客户端了,那么我直接登录linux环境,敲入命令生成钥匙
$ ssh-keygen -t rsa -C "youremail@139.com" -b 4096 Generating public/private rsa key pair. Enter file in which to save the key (/home/wlf/.ssh/id_rsa): Created directory '/home/wlf/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/wlf/.ssh/id_rsa. Your public key has been saved in /home/wlf/.ssh/id_rsa.pub. The key fingerprint is: c8:97:d1:65:55:32:1a:a2:f2:6d:bf:c3:8e:df:8d:3a youremail@139.com The key's randomart image is: +--[ RSA 4096]----+ | . +.+..| | o + o o | | . o . . | | . + + | | o S o | | . . . | | .. | | .Eo o | | .o=+o .| +-----------------+
上面这里没有设置密语和密码,一路回车下来,这样就生成了。
其次,有了钥匙就要拿来用了。先在本地C盘你的用户目录下新建一个.ssh目录(比如我的是C:\Users\wulf\.ssh),然后到linux环境上取钥匙。因为.ssh是隐藏目录,我们可以先cd进去,把私钥id_rsa和公钥id_rsa.pub两个文件cp出来,再通过ftp下载到本地的.ssh目录下。
最后,到git配置公钥,先打开id_rsa.pub,Ctrl + C。登陆git -> 点开头像 -> 点进setting ->接下来兵分两路: 如果是个人,点SSH and GPG keys -> 点 New SSH key,到key下面的框里Ctrl + V,最后点Add SSH key;如果是组织,点SSH keys -> 到key下面的框里Ctrl + V,最后点Add key。git会先校验一下,然后同步成功。这时你就可以直接通过ssh连接本地git仓库和远程仓库了。
这里以eclipse连接为例,我们先在git上找个项目,点一下Clone按钮,再到eclipse里点开File -> Import -> Git -> Projects from Git -> Clone URI -> Next -> 直接输入密码即可,啥都不用干,完事。