git 的使用和如何clone ,我这里暂且不讲,直接说问题:
首先操作结果如下:
错误码403 的意思可以百度,简单说就是服务器知道你的意图,但是拒绝了你。
隐隐约约感觉到是账密的问题,但是又不弹出需要输入密码的弹窗。后来查阅定位到具体原因:git 客户端缓存了错误的密码。
问题起源:
https方式每次都要输入密码,按照如下设置即可输入一次就不用再手输入密码的困扰而且又享受https带来的极速
- 设置记住密码(默认15分钟):
git config --global credential.helper cache
这一步在我们一开始使用git的时候,看的那个教程上肯定有,也操作过。
当时是方便了, 等现在换项目时就会遇到今天的问题。
如果想自己设置时间,可以这样做:
git config credential.helper 'cache --timeout=3600'
这样就设置一个小时之后失效
- 长期存储密码:
git config --global credential.helper store
找到当初挖的坑,就进入今天的主题,推荐方法:
增加远程地址的时候可以带上密码。(推荐)
- 方法一:
http://yourname:password@git.oschina.net/name/project.git
这种方式会把改账号和密码也添加到~/.git-credentials。
- 方法二:
运行命令:rm ~/.git-credentials
,删掉之前 git 保存的账号和密码。回到每次输入用户名和密码。
真是后悔,图一时痛快,忽略了宝贵的“推荐”二字。git config --global credential.helper store
该命令可以将用户名和密码长期全局地长期地存储在客户端(实际是客户端所在电脑,并非git的任何目录下,也就是说,即使重装git,改密码也存在。),注意是全局的。
不推荐的原因正是这个。因为,这里保存的账号和密码会自动应用到每一个git clone指令,如果想要克隆的不是该账号下的项目,就只会得到403错误。
如果帮助你解决了问题,还请留下一个点赞,谢谢。