问题解决:github push failed (remote: Permission to userA/repo.git denied to userB.)

本文假设了两个用户 userA 和 userB ,userA的github项目名为 test 当你在使用git push项目的时候,你遇到了这个问题:git

MacBook-Pro:BSBacktraceLogger $ git push -u origin master
remote: Permission to userA/test.git denied to userB.
fatal: unable to access 'https://github.com/userA/test.git/': The requested URL returned error: 403
复制代码

报了403,说明访问被拒绝。 意思很明白,userB没有权限对userA的test进行push更改。 可是这时你已经使用了以下命令去配置全局用户。github

git config --global user.name userA
git config --global user.email userA@Email.com
复制代码

而且很明确当前用户已是userA,但仍是说userB没权限。bash

缘由

因为该电脑使用git bash配过SSH,系统已经将指向github.com的用户设置为了userB,每次push操做的时候,都将读取到userB的用户信息,相似于记住密码spa

解决方法

在mac操做系统中,出现这个问题是经过OSX密钥链中的凭据来进行做为push的凭据的。这时咱们能够到 钥匙串访问 -》 删除咱们的userB的凭据。具体操做以下:操作系统

  1. 在 Finder 中,搜索 Keychain Access 应用程序。 .net

  2. 在 Keychain Access 中,搜索 github.com。 3d

  3. 相应地编辑或删除该条目。code

  4. 再次尝试 输入帐号密码后成功push。 cdn

参考资料

  1. blog.csdn.net/qq_22389025…
  2. help.github.com/cn/github/u…
相关文章
相关标签/搜索