Git用错误的用户名将文件推送到github

时间:2014-05-22 21:50:32

标签: macos git github ssh

我正在尝试使用Mac OS上的终端将我提交的更改推送到Github但是 它一直说我的旧github用户拒绝访问存储库

  

允许myuser / test1.git拒绝“OldUser”。   致命:无法访问“https://github.com/”NewUser“/test1.git/”:请求的网址返回错误:403

我发现了一些类似的问题,但没有一个答案对我有用:
首先,我从我的mac中删除了所有SSH密钥并创建了一个新密钥,然后我与我的github帐户同步。

其次,我已经使用

将git的全局配置设置为我的新用户名和电子邮件
git config --global user.name AND user.email

当我在我的项目目录中的git本地配置文件中更改用户和电子邮件时(至少认为这样可行),我很惊讶在推送时看到同样的错误,我的旧用户名再次弹出... (我真的以为本地配置会覆盖任何旧的全局值)我只是不知道在哪里看... 没有定义git环境变量,并且重新创建了SSH密钥。 似乎最后一个选择是重新安装git,这将是一个非常难看的出路..

哦!顺便说一句,当我试图使用专用的MacOS应用程序推送到github时它工作得很好!我并没有感到惊讶,因为所有报告此问题的用户都说应用程序对他们很有用..只是想到我提到它了!

所以,如果有人得到答案(或者至少是预感),那对我有很大的帮助。

2 个答案:

答案 0 :(得分:3)

  当我尝试使用专用的MacOS应用程序推送到github时,它工作得很好!

Mac的gitHub可能使用https网址,使用您的GitHub登录名/密码(GitHub for Mac正在缓存)。

检查与远程来源相关联的网址:

git remote -v

如果是https网址(如您的错误消息提示"无法访问' https://github.com/"NewUser"/test1.git/'"),那么任何数量的SSH摆弄都不会改变该错误。
也许,对于http网址,Credential Caching on Mac OS X has still the old credentials

答案 1 :(得分:0)

我在Windows上遇到了完全相同的错误,显然这是一个Git问题。感谢ayan4m1在github论坛(https://github.com/Microsoft/Git-Credential-Manager-for-Windows/issues/152)我终于在Windows中使用notepad在管理模式下修复了这个问题,从C:\ Program Files \ Git \ mingw64 \ etc.gitconfig文件中删除了credential.helper = manager行。没有其他工作。

显然,因为我在我的IDE中使用Git bash处于非提升模式,所以我的全局命令都无法覆盖全局文件。希望这有助于为这个问题的其他人节省时间。