git push 需要输入用户名和密码,原因分析及解决

参考:
https://help.github.com/en/articles/which-remote-url-should-i-use
https://stackoverflow.com/questions/6565357/git-push-requires-username-and-password
https://help.github.com/en/articles/caching-your-github-password-in-git
https://help.github.com/en/articles/securing-your-account-with-two-factor-authentication-2fa

当从网上克隆一个仓库时,有两种URL可以选择,一种是HTTPS URLs(任何场景下都可以工作,推荐方式),另一种是SSH URLs。

通常我们选择的是使用HTTPS URL来clone仓库
当使用HTTPS方式克隆仓库时,对仓库的一些更改操作,比如说git push,需要用户输入username and password。这是因为Github采取了two-factor authentication,双重验证方式来保证安全。(每次验证的时候,需要输入用户名和密码),或者如果要授权某个组织,给第三方软件,来访问Github,则需要提供personal access token

如果不想每次输入用户名和密码,则可以使用credential.helper(凭证助手)来记住Username和Password。

$ git config credential.helper store
$ git push https://github.com/owner/repo.git
# 然后输入用户名和密码
Username for 'https://github.com': <USERNAME>
Password for 'https://USERNAME@github.com': <PASSWORD>

这样下次再git push时,就不用输入用户和密码了。
还可以设置记住时间:

git config --global credential.helper 'cache --timeout 7200'  #  这里设置账号信息被记住7200秒,两个小时。
  • 11
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值