如何在终端切换git用户?


46

我正在尝试从命令行将项目推送到远程存储库。

在本地目录中,我点击了:

$ git push

并获得以下错误:

remote:拒绝对username2的username1 / repo.git权限。
严重:无法访问“ https://github.com/username1/repo.git/ ”:
请求的URL返回错误:403

username1我的github帐户用户名托管我要推送到的存储库在哪里,并且username2是我以前在此计算机上使用的旧帐户。

我在Macbook Air上使用OS X Yosemite(v10.10.5)。而且我更喜欢使用https而不是ssh

我该如何更新到username1才能成功推送到我的遥控器?

编辑:明确地说,我不是在谈论简单地编辑config user对象,例如,

$ git config --global user.name "Billy Everyteen"
$ git config --global user.email "billyeveryteen@example.com"

它们与身份验证无关。我的问题涉及写入我的远程存储库所必需的用户身份验证



谢谢。但这仅涉及设置用户名。不认证。换句话说,该文档向我们展示了如何关联提交者的姓名。但这实际上并没有授权用户推送提交。
Mowzer '16

1
您可以使用git-scm.com/docs/gitcredentials中记录的命令来更改它。或者,如果您想清除凭据,则可以查看此问题stackoverflow.com/questions/15381198/…
约翰

这不能解决问题!
Mihail Salari

如果我不想更改本地git设置怎么办?
Arkady

Answers:


42

除了使用git config以下命令从终端更改用户名和电子邮件:

$ git config --global user.name "Bob"
$ git config --global user.email "bob@example.com"

您需要从钥匙串中删除授权信息。在我发现自己的钥匙串中也有证书之前,我一直在为此苦苦挣扎。

打开“钥匙串”访问权限,单击“所有项目”并搜索git。您将获得一些像这样的物品:

屏幕截图

删除它们。现在尝试推送存储库,git会要求您为用户写密码,您将可以使用。


1
Windows用户呢?
Aks..17

2
我有多个帐户该怎么办
Amerrnath

我在win7上遇到了同样的问题。我不确定解决方案是什么:(
Fiddle Freak '18

21

对于cli用户,只需使用以下命令: git config credential.username 'Billy Everytee'


您需要暂时禁用2FA。
bbaassssiiee

10

对于Windows用户:请
按照以下说明进行操作:
控制面板>>用户帐户>>凭据管理器>> Windows凭据>>通用凭据

删除git凭证。
下次您执行回购协议时,它将要求您提供凭据。
回答参考以获取详细说明


谢谢!那就是我在Windows上寻找的东西。
JCF

@JCF欢迎您!我很高兴它有所帮助!
Shubham Chadokar

6

列出您的git配置。

git config --list

全局更改用户名和电子邮件

git config --global user.name "Nanhe Kumar"
git config --global user.email "info@nanhekumar.com"

更改当前回购的用户名和电子邮件

git config  user.name "Nanhe Kumar"
git config  user.email "info@nanhekumar.com"

如果您正在使用位存储桶,请更改您的回购网址。

nano .git/config

该文件将是这样的。 [core] repositoryformatversion = 0 fileMode = false bare = false logallrefupdates = true ignorecase = true precomposeunicode = true [remote "origin"] url = https://nanhe@bitbucket.org/nanhekumar/myproject.git fetch = +refs/heads/*:refs/remotes/origin/* [branch "master"] remote = origin merge = refs/heads/master

[user]
        name = Nanhe Kumar
        email = info@nanhekumar.com

考虑到全球和本地回购范围,这是最彻底的答案。
约旦·斯特凡内利
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.