远程:未授权 致命错误:身份验证失败 Bitbucket

9

好的,这里是情景描述:

我已经使用用户1的账号登录到了我的Bitbucket账户。

我的登录方式如下:

$ git config --global user.name "user1"
$ git config --global user.email "user1@gmail.com"

我能够完美地执行 commitpush 操作。

现在,我在 bitbucket 上有另一个帐号,使用的是 user2 的另一个电子邮件地址。

因此,我登录方式如下:

$ git config --global user.name "user2"
$ git config --global user.email "user2@gmail.com"

但是现在当我执行git push origin master时,我收到以下错误信息。

fatal: Authentication failed for 'https://user2@bitbucket.org/user3/test.git/'

我完全从我的Ubuntu 14.04上卸载了git,然后重新安装并重新登录。但即使如此,仍然会出现相同的问题。

如何避免这个错误信息?

4个回答

2
< p > user.nameuser.email 本地配置与 git 存储库托管服务器身份验证无关。这只是用于提交者/作者身份。< /p > < p > 如果您使用的是 https url,那么您需要使用 BitBucket 登录名和密码。
如果有一个 BitBucket 帐户 'user2',则其 BitBucket 密码就足以通过认证(他/她需要成为 user3 项目的协作者才能获得推送权限)< /p > < p > 确保密码中没有特殊字符,否则您将不得不对其进行百分号编码。(详情请参阅此处)< /a>< /p >

我在我的密码中有一个感叹号。这可能是问题所在。让我检查一下。 - Suraj
我应该使用 %21 代替 ! 吗? - Suraj
@Suraj 只有在 URL 中使用时才需要转义(例如,当您登录 BitBucket 时直接输入)。 - VonC
@Suraj 如果您使用https://user:yourpassword%21@bitbucket.org/users/user3/test.git,则需要对密码进行编码。但首先,请问您能否通过https://bitbucket.org/account/signin/?next=/account/登录到BitBucket?(请使用常规“!”密码) - VonC
让我们在聊天中继续这个讨论 - Suraj
显示剩余2条评论

1
我的问题是我使用了https而不是ssh,在更改为ssh后,一切都运作正常。

0

我在一台电脑上也遇到了相似的问题。通过在~/.gitconfig文件中注释或删除这些行,我成功解决了这个问题。

[url "https://:@repo.zzz.xxx"]
insteadOf = https://repo.zzz.xxx

0

我遇到了同样的问题!即使提供了正确的密码,它仍然显示相同的错误。

解决方案

步骤:只需检查您的密码是否正确。如果正确,请检查您对该存储库具有正确的权限。(我遇到了权限问题,并使用此步骤解决了问题)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接