git pull / git push 记住密码方法(ssh记住密码)
备注: 适用于Linux/Mac OS等。
有没有觉得,每次git pull 或git push的时候,都需要重新输入密码,很麻烦。搜了下找到一种方法记住ssh连接的密码,同时把Git repository的密码保存下来,下面就来一步一步做吧。。
1. 首先是保存密码输入问题,需要创建密钥,在你的命令行输入:
local:~ yourname$ ssh-keygen -t rsa
然后依次回车,输入密码,这个密码和SSH的帐号密码无关。
Generating public/private rsa key pair.
Enter file in which to save the key (/u/kim/.ssh/id_rsa): 【回车】
Enter passphrase (empty for no passphrase): 【第一次密码】
Enter same passphrase again: 【第二次密码】
Your identification has been saved in /u/kim/.ssh/id_rsa.
Your public key has been saved in /u/kim/.ssh/id_rsa.pub.
2. 接下来把密钥文件内容上传到的SSH帐号下:
local:~ yourname$ **cat ~/.ssh/id_rsa.pub | ssh username@yourhost ‘cat >> .ssh/authorized_keys’** |
3. 最后一步测试
local:~ yourname$ ssh username@yourhost.com
如果此时不需要你输入密码,那么恭喜你设置成功了。现在你再执行git pull 或git push就不需要输入密码了。
参考:Store your git https passwords in your OS X Keychain
ps: 如果更换主机ip地址等,会出现ssh的一个提示,去除这个提示,请使用:
ssh-keygen -f ~/.ssh/known_hosts -R NewIP
对于另外一种每次需要输入用户和密码git账户,比如github。用以下方法
若想让 Git 使用 osxkeychain,可以在 Git 的全局设置中进行设置:
\<code\>$ git config --global credential.helper osxkeychain # Set git to use the osxkeychain credential helper \</code\>
经过这样的设置之后,下次再克隆 HTTPS 地址时会询问你的用户名和密码,并授权给 OSX keychain。完成这些之后你的用户名和密码就会存储到 keychain 中,再也不会在 Git 中询问了。