Git用户切换,多个Github账号咋办(WIN10)

背景

去年,因为毕业设计需要,多开了个github小号。

时隔近1年多未使用,毕设已经结束,于是需要切换回大号。

问题

我登陆上自己的github账号(大号),然后随便复制了一个仓库地址,在本地某目录下执行

git clone https://github.com/xkfx/xkfx.github.io.git

进展顺利。

xkfx.github.io文件夹出现在当前目录下。

于是我切入文件夹对文件进行修改,修改完之后

git add --all

git commit -m "add all . test "

都顺利运行,于是我继续执行

git push origin master将修改提交到远程仓库

不出意外,出现了问题

fatal: AggregateException encountered.
▒▒▒▒һ▒▒▒▒▒▒▒▒▒▒
remote: Permission to xkfx/xkfx.github.io.git denied to 我的小号名字.
fatal: unable to access 'https://github.com/xkfx/xkfx.github.io.git/': The requested URL returned error: 403

也就是我本地的用户是我小号,没办法向大号的仓库提交修改。

解决办法

把本地用户修改回大号。

尝试1 - push成功了,但是用户没有改,仍然是作为小号提交的。

删掉系统存储的用户名和密码,重新登陆(参考https://www.jianshu.com/p/0301684cd208),具体步骤如下:

  1. 先执行rundll32.exe keymgr.dll,KRShowKeyMgr
  2. 在跳出的窗口中将Github相关条目删掉
  3. 重新执行git push -u origin master跳出窗口提醒你重新登陆

最开始是在一个弹出窗口输入大号用户名和密码,但是还是会有相同的403错误。

于是我重启了cmd又执行git push -u origin maste并且在弹出上面说的那个弹出窗口后把它叉掉,然后就出现了下面这个情形(提示你在cmd中输入用户名,弹出窗输入密码),结果是提交成功了。但是用户并没有改,如标题所说,Github上还是显示小号提交。

重新cmd后关闭弹出窗口在cmd中输入用户名

尝试2

所以尝试1只是获得了push的权限,并没有彻底更改本地的git用户。

于是我又借鉴这篇文章https://www.cnblogs.com/shenxiaolin/p/7896489.html

具体步骤是:

  1. 执行git config user.name检查当前用户,果然不是预期的
  2. git config  --global user.name 你的目标用户名;
  3. git config  --global user.email 你的目标邮箱名;

做完上面的事情,重新测试,结果符合预期。

原文地址:https://www.cnblogs.com/xkxf/p/14271195.html