Windows下解决github push failed (remote: Permission to userA/XXXX.git denied to userB.) 上传gitHub失败报错
Windows环境下解决 github push failed (remote: Permission to userA/XXXX.git denied to userB.)
· 初学GitHub的朋友遇到可能会遇到一些很难找到答案的问题,这个就是一个找了3天才有点眉目的问题,现在把解决方法分享给大家,希望初学者少走弯路。
下面假设了两个用户 userA 和 userB ,userA的github项目名为 XXXX.git
-----------------------------------------------------------------------------------------------------------------------------------------------------
针对git push的时候报错(解决上传到github报错)
Successfully created project 'XXXX' on GitHub, but initial commit failed:
remote: Permission to userA/xxxx.git denied to userB。fatal: unable to access ‘https://github.com/userA/xxxx.git/‘: The requested URL returned error: 403
-----------------------------------------------------------------------------------------------------------------------------------------------------
当你在使用Idea、VS code 、Android Studio等开发工具 push项目的时候,如果遇到了这个问题:
fatal: unable to access 'https://github.com/userA/XXXX.git/': The requested URL returned error: 403
问题的表面原因?
报了403,说明访问被拒绝。
切换到终端(Terminal),使用命令 git push -u origin master 后,错误显示到下方了:
问题分析
意思很明显,就是说userB没有权限对userA的XXXX仓库进行push更改。
- A) 可以通过shell命令(打开Git Bash程序)输入
cat ~/.gitconfig
,得知当前的用户为userB。 - B) 也可以
这时你早已经使用如下命令去配置过全局用户:
并且很明确当前用户已经是userA,但还是说userB没权限。
那么究竟是什么原因呢?
由于该电脑使用git bash配过SSH,系统已经将指向github.com的用户设置为了userB,每次push操作的时候,都将读取到userB的用户信息,类似于记住密码。
如何解决?
三种方案:
1、对userA生成SSH公钥,添加到userB的github后台;
2、将userB添加为userA项目的contributer;
3、移除计算机中的userB。
对于1和2,相信很多人不想这么做,因为一旦使用了SSH,以后的所有clone、pull、push等操作都将使用SSH传输,对以往使用过https传输的项目也得重新更改传输方式,这样会浪费一些时间。
现在详细讲下方案3,操作很简单:
打开 控制面板–>用户账户–>凭据管理器–>管理Windows凭据(或者在开始菜单中搜索 【凭据管理器】)
打开凭据管理器后,下拉在普通凭证,展开这条github.com相关的凭据,直接删除 或者 点编辑修改,再拉取或者提交的时候会让我们重新输入用户名密码 。
最后查看重新生成了一个证书,并且未指定用户。
---------------------
参考文献:
1. I-T枭 https://blog.csdn.net/hahahhahahahha123456/article/details/81104977
2. 神话2009 https://blog.csdn.net/klxh2009/article/details/76019742
·
·
相关文章
- 最新GitHub新手使用教程(Windows Git从安装到使用)——详细图解[通俗易懂]
- Windows 下安装和配置 WSL(Windows 10 子系统)
- windows显示Linux对话框程序,在cmd命令行中弹出Windows对话框(使用mshta.exe命令)…
- Windows查看端口占用情况_windows关闭端口命令
- windows窗体线程异常_指针在声明和使用时有何不同
- Windows系统日志分析_windows系统事件日志
- 本地Git如何修改已保存的Github密码(Mac/Windows)
- Windows 环境搭建 PostgreSQL 逻辑复制高可用架构数据库服务
- Windows中磁盘处于脱机状态怎么解决
- 配置Git for windows(Git bash)登录GitHub
- MongoDB在Windows平台的安装及配置方法
- windows下oracle 11g r2 安装过程与卸载详细图解
- MySQL在Windows Server 2503上的安装(mysql安装2503)
- 前瞻:Windows远程访问Linux技术(windows远程访问linux)
- 微软发布新版兼容性检查工具 可以说明PC为何不支持升级Windows 11
- 微软正式推出Windows 365 Cloud PC为企业提供更便捷的始终在线体验
- 和windows比较Octave在Linux和Windows上的性能(octavelinux)
- windows 系统Linux 安装 Windows:一步步轻松烧录(linux烧录)
- windows三大操作系统:IE,Linux,Windows(ielinux)
- 在Windows环境下实现Redis服务安装(windows下安装redis)
- 和 windows比较: Getty Linux 与 Windows(gettylinux)
- Github Atom简史:差点被GitHub创始人放弃
- Windows在中国OS市场依然是“独孤求败”
- 如何在Linux系统中安装Windows操作系统(linux安装win)
- Windows下如何安装和使用MySQL数据库?(windosmysql)
- Windows 11的默认壁纸现在可供下载 含深色和浅色主题版本
- Linux轻松访问Windows共享文件夹,搞定文件共享(linux访问windows共享文件夹)
- windows共享盘Linux环境下如何挂载Windows共享盘(linux如何挂载)
- Linux轻松移植文件至Windows(从linux下载文件到windows)
- Windows和Linux:异曲同工的计算机操作系统(windows和linux的区别)
- Linux将文件传输到Windows系统中(linux传文件到windows)
- Linux与Windows: 抉择难题(linux与windows区别)
- 微软Word将让用户在Windows和Mac上跟踪自己的修改