Git认为我是一个不同的用户,不会让我访问github repo

bcl*_*man 7 git github

我在github(Mariogs37)上有一个帐户,我已经停止使用了.与此同时,我创建了一个我想开始使用的新人(bclayman).我在github上创建了一个repo并运行:

git remote add origin https://github.com/bclayman/SquashScraper.git
Run Code Online (Sandbox Code Playgroud)

我没有收到任何错误消息,然后我运行:

git push -u origin master
Run Code Online (Sandbox Code Playgroud)

但是,我收到此错误消息:

remote: Permission to bclayman/SquashScraper.git denied to Mariogs37.
fatal: unable to access 'https://github.com/bclayman/SquashScraper.git/': The requested URL returned error: 403
Run Code Online (Sandbox Code Playgroud)

我搜索了类似的问题并发现了这个链接:

http://stackoverflow.com/questions/24019258/git-thinks-im-the-wrong-user
Run Code Online (Sandbox Code Playgroud)

我按照vonC的回答说明(这里:https://help.github.com/articles/generating-ssh-keys/#step-3-add-your-ssh-key-to-github ).在将我的SSH密钥添加到github的最后,我在终端中得到了这个:

Hi bclayman! You've successfully authenticated, but GitHub does not provide shell access.
Run Code Online (Sandbox Code Playgroud)

我重新尝试将我的本地仓库推送到github,但遇到了同样的错误.知道为什么它仍然认为我是Mariogs37(因此没有权限推送到bclayman拥有的github上的回购)?

谢谢,

bclayman

Jör*_*ees 6

这很可能是对凭证用于什么的误解.

GitHub允许您使用两种不同的协议来访问您的仓库:

  • HTTPS
  • SSH

SSH:

这个使用~/.ssh文件夹中的ssh键和设置.如果您添加这样的遥控器,则使用它:

git remote add origin git@github.com:bclayman/SquashScraper.git
Run Code Online (Sandbox Code Playgroud)

HTTPS(您选择的那个):

这个使用https凭据,根据您的系统可以存储在各个地方(如果有的话).由于您似乎正在使用OS X Keychain,因此它们很可能存储在那里.如果您添加这样的遥控器,则使用https协议:

git remote add origin https://github.com/bclayman/SquashScraper.git
Run Code Online (Sandbox Code Playgroud)

所以为了解决这个问题,我打开你的OS X Keychain并搜索https://github.com并删除所有出现的项目.下次尝试推送/获取时,应再次询问您的用户名和密码.