原文地址:解决git以 https和ssh方式 每次都要输入用户名和密码问题
如何区分我们使用的https方式还是ssh方式跟git server交互的呢?在git bash里边输入
git remote -v
如图所示https协议,所以使用的就是https方式
使用https方式
在git bash 中执行
git config –global credential.helper store
这个是长期存储密码。
当然也可以设置缓存密码多久
git config –global credential.helper cache
设置记住密码(默认15分钟)
如果想自己设置缓存时间,可以这样做:
git config credential.helper ‘cache –timeout=3600’
这样就设置一个小时之后失效
上面的命令操作其实是被记录到 ~/.gitconfig 文件中了
使用ssh方式
我们思路:把https方式换成ssh方式的,然后生成公匙、私钥,把公匙放在git server端。
1、重新设置成ssh的方式:
git remote rm origin git remote add origin [email protected]:username/repository.git git push -u origin master
2、添加SSH公匙。
ssh-****** -t rsa -C “xxx"
我这边因为之前就有设置,所以会提示是否覆盖,小括号里有文件的路径。success后,会在~/.ssh/目录生成两个文件,如图中所示的两个文件,把id_rsa.pub文件中的内容复制github New SSH key,如下所示:
3、进入自己的github主页,然后点击setting,再点击左侧导航中的SSH and GPG keys
4、点击右侧的New SSH key,会出现如下界面
这样以后push 就可以不用输入密码了。