Aus*_*nce 6 git authentication macos github
我正在尝试将一个新的repo推送到github并因为git缓存了meatwork凭据而无法这样做.
$ git push -u origin master
remote: Permission to me/me.github.io.git denied to meatwork.
Run Code Online (Sandbox Code Playgroud)
经过一些挖掘,我想也许credential.helper是问题,所以我试图删除它位git配置仍返回osxkeychain即使我已删除所有设置.
$ git config --system credential.helper
$ git config --global credential.helper
$ git config --local credential.helper
$ git config credential.helper
osxkeychain
$
Run Code Online (Sandbox Code Playgroud)
还看了git credential-osxkeychain,但它只是挂起
$ git credential-osxkeychain get
Run Code Online (Sandbox Code Playgroud)
所以无论如何回到原来的问题,如何指定或覆盖或重置push使用的默认用户.我检查了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
me@myhome.com
$ git config --system user.email
Run Code Online (Sandbox Code Playgroud)
那么git meatwork从哪里获取凭据以及如何阻止它.
同样的问题,我的解决方案是(在Mac上):
看看它现在是否有效.
我的情况是,有人用我的Mac登录他的Github,Mac记得他的名字和密码,这就是为什么他的许可被拒绝了......
-
参考:从OSX Keychain更新凭证| Github帮助
好吧,我的问题的第二部分的简单答案归功于这里的提示https://git-scm.com/docs/gitcredentials
将credential.username克隆的存储库的属性设置为我想要使用的用户名就可以了.
$ git config credential.username me
Run Code Online (Sandbox Code Playgroud)
现在,我的推动工作!我仍然不知道肉食来自哪里.
或者,编辑.git/config和更改URL中的[remote "origin"] url=包含username@也可以.
[remote "origin"]
url = https://me@github.com/Me/me.github.io.git
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3025 次 |
| 最近记录: |