• 当前位置:首页 > 日志 > git Push时请求 取消输入密码
  • 博客搬到SAE了,这个还是比较省心的。不用老是为备份担心。
  • 开启友情赞助空间
  • 无聊了:[ 探索发现 ] 一下,精彩文章等着你哦!

git Push时请求 取消输入密码

2015-01-27 17:30

10,533阅览 2条评 日志 arno

解决git Push时请求username和password,而不是ssh-key验证

之前开始用github时是在ubuntu下按着官方的新手指南搞定的。但最近一直在用fedora,所以也想在fedora下用github,配置的时候很顺利,就是在git push的每次都需要输入username和password,而我是配置好公钥登陆的。用ssh -T git@github.com 也是成功用公钥登陆的。

查看了下~/.gitconfig,发现和ubuntu下的一样,google看到一篇《GitHub使用简介》,里面说了git push的两种方式,SSH方式和HTTPS方式。在版本库的SSH方式和HTTPS方式是不同的,具体来说就是url信息的不同,但是,实际的认证机制也是不同的。当建立了本机密钥之后,使用ssh方式实际上是不需要再次认证的,而https则每次需要输入密码 。《Help.GitHub - SSH key passphrases》里也说了用SSH更方便更安全,不需要去输入长长的密码。

我去看了下repo目录下的.git/config,果然,我的url是HTTPS形式。

123
[remote "origin"] fetch = + refs/heads/*:refs/remotes/origin/* url = https://username@github.com/username/projectname.git

因为远程版本库的url是HTTPS,估计是我git clone的时候用HTTPS链接造成的

所以问题就出在这了,每次都很不方便,都要输入用户名和密码。

为了使用SSH公钥的方式认证,我把config的url改成下面这样

123
[remote "origin"] fetch = + refs/heads/*:refs/remotes/origin/* url = git@github.com:username/projectname.git

这样我git push的时候又可以用SSH公钥认证而不用去输入用户名和密码,不仅方便,而且更安全。

 

本文声明

除非注明,否则文章均为 " 枫林博客 " 原创,转载时请注明文章出处。


作者信息:arno \ 2015-01-27 17:30 \ 枫林博客 \

分类标签:日志

本文地址:http://www.blogfeng.com/git-push%e6%97%b6%e8%af%b7%e6%b1%82-%e5%8f%96%e6%b6%88%e8%be%93%e5%85%a5%e5%af%86%e7%a0%81.html

已经有2 条评论啦
  1. #2    2015-01-28 13:48 回复TA
    消灭星星:

    文章写得很不错。
    我觉得写的挺好的

  2. #1    2015-05-30 21:01 回复TA
    图解析-电影自媒体:

    技术活

发表评论

* *



​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​