git中使用https协议时每次push都需要输入密码来验证身份,这样就会显得有些麻烦,然后git协议的好处就出现了,使用git协议可以通过设置ssh key来省去每次输入密码验证的操作,省事多了~

生成ssh key公钥

首先检查一下是否已经生成:

$ cd ~/.ssh
$ ls

关键是看有没有用somethingsomething.pub来命名的一对文件,这个something通常就是id_dsaid_rsa。有.pub 后缀的文件就是公钥,另一个文件则是密钥。假如没有这些文件,或者干脆连.ssh目录都没有,可以用ssh-keygen来创建。该程序在Linux/Mac系统上由SSH包提供,而在Windows上则包含在MSysGit包里.若是已经生成可直接进入下一步.

创建ssh key:

$ ssh-keygen -t rsa -C "[email protected]"

然后便会提示输入密码,直接Enter跳过吧.. 然后便会提示已经生成到~/.ssh下面,Ok,可以进入下一步了

将公钥添加到Github

直接打开~/.ssh/id_rsa.pub,将内容全部复制,然后登陆Github,点击Settings->SSH keys,然后点击Add SSH key,将内容复制进去就可以啦.后面clone仓库的时候直接使用git协议便可以免去每次输入密码的麻烦了.

https协议clone的仓库修改为git协议

查看当前remote url:

$ git remote -v

修改remote url:

$ git remote set-url origin [email protected]:someaccount/someproject.git

OK就这么多了~搞定收工

参考地址:http://git-scm.com/