问题描述
因为使用了不同的账号对不同的项目进行登录,在更换回原先的账户下载git上的代码时,就报了这个问题,这个问题的导致原因其实也就是我们不断更换登录账户所导致的。
git更换用户的命令:git config --global user.name “zhangsan”
git config --global user.email “123@163.com”
附上一张这个错误的截图:
解决方式一
我们可以直接使用账号密码的形式去下载git上的代码,比如正常我们是这么克隆一个代码git clone -b master http://172.168.1.1/abc/abc.git,我们可以在下载时直接指定用户密码去下载对应代码,这样就不会出现这个问题了。那么怎么加上用户名和密码呢,如下所示:
//不适用用户密码直接下载 git clone -b master http://172.16.1.11:0000/bmp/tmp.git //制定个用户密码进行下载 git clone -b master http://用户名:密码@172.16.1.11:0000/bmp/tmp.git
注意:如果用户名或者密码中包含了@这个字符,要使用特殊转义,使用%40去代替@字符。,而密码后面跟的@是用于区分用户名密码与git地址的间隔符。
该方法本人亲自测试过,有效。
解决方式二
这种方式就是从根源上解决这个问题,首先我们要明确这个问题产生的根本原因是什么,这个问题是因为我们切换了不同的用户登录git导致的,这样计算机会在凭据里面保存以前的登录信息,这样就导致了我们下载代码时出现了这个问题,如下图展示的是凭据里面保存的信息。
这个信息在哪里找呢,直接点击windows键,然后输入凭据就可以看到了。
我们知道影响到自己的凭据信息直接删除就可以将问题解决,如果不清楚是哪个影响的自己,直接将所有关于git的凭据信息直接删除就行,在你从新下载代码时,git会提示你输入用户名与密码,这样就可以正常下载了。也就解决了这个问题。这种方式本人也亲自测试过,是有效的。
解决方式三
删除你的git,从新下载,在删除git时,凭据信息也会失效,下载完毕从新登陆即可解决,这是一种不明就里的解决方案,但是也是可以达到目的。建议使用方式一和方式二。
总结
这个问题之所以出现就是因为我们使用不同账号登陆git导致的,所以建议我们git只使用一个账户登陆,也就是只使用我们自己最常用的账号,在下载其他项目代码需要使用其他人的git账户时,建议不要去登陆他人账户,我们可以使用指定用户密码的方式去下载这些代码,就像上面的方式一那样,这样就可以避免这种问题产生了。