OSX:git:remote:Permission to user/repo denied to otheruser

nhjlsmyf  于 2023-11-15  发布在  Git
关注(0)|答案(4)|浏览(106)

我正试图将一个新的repo推送到github,但由于git缓存了meatwork凭据,因此无法执行此操作。

$ git push -u origin master
remote: Permission to me/me.github.io.git denied to meatwork.

字符串
经过一番挖掘,我想可能是credential.helper的问题,所以我试图删除它位git配置仍然返回osxkeychain,即使我已经删除了所有设置。

$ git config --system credential.helper 
$ git config --global credential.helper 
$ git config --local credential.helper 
$ git config credential.helper
osxkeychain
$


还看了git credential-osxkeychain,但它只是挂起

$ git credential-osxkeychain get


所以无论如何回到最初的问题,我如何指定或覆盖或重置推流使用的默认用户。我检查了user.nameuser.email设置,它们被设置为正确的用户(不是meatwork)。

$ git config --local user.name
$ git config --global user.name
me
$ git config --system user.name
$ git config --local user.email
$ git config --global user.email
[email protected]
$ git config --system user.email


那么git从哪里获取meatwork凭证以及如何停止它。

ubof19bj

ubof19bj1#

我的解决方案是(在Mac上):
1.打开钥匙串访问app。
1.搜索 github.com
1.删除其他用户的信息
看看它现在是否有效。
我的情况是,有人用我的Mac登录了他的Github,Mac记得他的名字和密码,这就是为什么他被拒绝了。
参考:Updating credentials from the OSX Keychain | Github Help

yftpprvb

yftpprvb2#

好吧,我问题的第二部分的简单答案感谢这里找到的提示https://git-scm.com/docs/gitcredentials
将克隆存储库的credential.username属性设置为我想要使用的用户名就可以了。

$ git config credential.username me

字符串
现在我的推力起作用了!我还是不知道肉从哪里来。
或者,编辑.git/config并更改[remote "origin"] url=以在URL中包含username@也可以工作。

[remote "origin"]
  url = https://[email protected]/Me/me.github.io.git

inb24sb2

inb24sb23#

我有完全相同的问题,但在Windows OS/10。要解决这个问题,我需要去凭据管理器,我删除了我的旧用户的所有凭据。
当我在Git Bash上运行命令时:

git push origin master

字符串
我得到了一个屏幕询问我的GitHub凭据。填写登录名/密码后,它工作。

t0ybt7op

t0ybt7op4#

我今天遇到了同样的问题,但没有得到任何答案。原来我没有验证我的ssh密钥。要检查您的公钥是否已添加到SSH代理:ssh -T [[email protected]](https://stackoverflow.com/cdn-cgi/l/email-protection)如果它不是正确的用户,请使用以下命令添加SSH密钥:ssh-add ~/.ssh/your_ssh_key

相关问题