前言:
今天把gitlab密码修改后用soutcetree在拉取远程仓库代码,出现以下错误,remote: HTTP Basic: Access denied
fatal: Authentication failed for ‘http://xxxxxxxx.git/’,找了一圈,试了各种办法,最后顺利解决,以此记录一下。
1.错误信息截图如下:
2.基本意思就是拒绝访问,没有权限,拉取代码失败,先尝试第一种方案:
git config --system --unset credential.helper
!输入命令行
输入以上命令后发现使用sourcetree拉取代码还是提示没有权限,拉取失败,当然此时使用git clone xxxxx.git是可以拉取代码的,在studio中直接拉取也是可以的,但是之前sourcetree的本地仓库就用不了,没有解决根本问题。
3.接下来我们尝试第2种解决方法,修改用户凭证管理:
修改凭证的账号和密码,修改完成之后保存,打开sourcetree发现还是拉取失败。
4.尝试第3种方法,刷新认证的token和账户密码,和第2种有点类似,发现这种方法也不管用。
5.此时已经处于崩溃边缘了,其实在studio中使用第1步中的命令之后是可以拉取代码的,但是本人习惯了使用soutcetree,而且一贯的作风就是遇到问题就要解决它,于是乎在google翻墙,查看stackoverflow和国内各大博客和资料后,找到一种终极解决方法,注意重点来了!!注意重点来了!!注意重点来了!!
6.终极解决方法如下:
找到你本机电脑的sourcetree安装目录下的passwd文件,干掉它!!删除它!!粉碎它!!就是这玩意一直在作祟。
7.我们看看删除之后的运行效果,这里就不废话了,直接上效果图:
这里分三步:
7.1.拉取代码,弹出输入用户账号和密码弹框.
7.2.输入正确的账号和密码,要不然会一直提示你账号密码出错,也是没有权限拉取代码的.
7.3.然后再次点击拉取,发现居然成功了。
偶买噶感谢CCTV,各种TV,感谢佛祖,感谢上帝!!
8.总结:
有人说你用studio图形化工具或者获取命令行拉取不就好了,一直纠结这个干啥,可能是做开发的时间久了,养成的习惯,再加上个人喜欢用sourcetree,所以在尝试上面三种方法,最后使用终极大法还是很好地解决了问题,这里的终极大法不是关机重启,哈哈~~
谨以此篇记录一下我那夜以继日的奋斗生活,希望有遇到相同问题的同学可以参考一下,写bug,解bug,测bug,一直在bug的路上勇往直前。