我正试图将一个新的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.name
和user.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
凭证以及如何停止它。
4条答案
按热度按时间ubof19bj1#
我的解决方案是(在Mac上):
1.打开钥匙串访问app。
1.搜索 github.com
1.删除其他用户的信息
看看它现在是否有效。
我的情况是,有人用我的Mac登录了他的Github,Mac记得他的名字和密码,这就是为什么他被拒绝了。
参考:Updating credentials from the OSX Keychain | Github Help
yftpprvb2#
好吧,我问题的第二部分的简单答案感谢这里找到的提示https://git-scm.com/docs/gitcredentials
将克隆存储库的
credential.username
属性设置为我想要使用的用户名就可以了。字符串
现在我的推力起作用了!我还是不知道肉从哪里来。
或者,编辑
.git/config
并更改[remote "origin"] url=
以在URL中包含username@
也可以工作。型
inb24sb23#
我有完全相同的问题,但在Windows OS/10。要解决这个问题,我需要去凭据管理器,我删除了我的旧用户的所有凭据。
当我在Git Bash上运行命令时:
字符串
我得到了一个屏幕询问我的GitHub凭据。填写登录名/密码后,它工作。
t0ybt7op4#
我今天遇到了同样的问题,但没有得到任何答案。原来我没有验证我的ssh密钥。要检查您的公钥是否已添加到SSH代理:
ssh -T [[email protected]](https://stackoverflow.com/cdn-cgi/l/email-protection)
如果它不是正确的用户,请使用以下命令添加SSH密钥:ssh-add ~/.ssh/your_ssh_key