Git和Bitbucket:推送时未经授权

时间:2019-06-22 20:13:34

标签: git ssh bitbucket atlassian-sourcetree

我已经在BitBucket中创建了一个存储库,并使用SSH对其进行了克隆。尝试push对BitBucket进行更改时,出现以下错误:

  

未经授权

     

致命:无法从远程存储库读取。

我已经使用ssh-keygen创建了SSH密钥,并将生成的公共密钥复制到BitBucket。我已经下载了SourceTree,以查看是否有一些工具可能会有所帮助,但是存在相同的问题。

我已经尝试修复了几个小时,不想再浪费时间了。令人惊讶的是,在Google上搜索时,我找不到任何存在类似问题甚至错误消息的人。

请帮助!我在Mac OS X上运行,并尝试从Keychain Access中删除GitHub凭据,但这不能解决问题。有人知道我可能做错了吗?

更新

我在GitHub上使用了完全相同的客户端配置,并且没有遇到任何问题,因此我怀疑是我遗漏了BitBucket上的某些配置。

3 个答案:

答案 0 :(得分:9)

问题: 您的公共SSH密钥已添加到 REPO->设置->访问密钥

它仅提供此处所述的只读访问权限

  

Use access keys获得对该存储库的只读访问权限。   了解有关using SSH keys.

的更多信息

解决方案:

中添加公共ssh密钥
  

您的个人资料->位桶设置-> SSH密钥

答案 1 :(得分:0)

有同样的问题并解决了。

我的问题是我通过该存储库的“设置”将生成的公共ssh密钥添加到了该存储库本身。

解决方案是从存储库本身中删除ssh密钥。点击您的帐户。通过帐户的“设置”添加ssh密钥。

答案 2 :(得分:-1)

您可能会检查是否使用HTTPS或SSH克隆了存储库。假设您使用的是SSH,则可以尝试在〜/ .ssh / config中明确设置ssh客户端配置,并定义要使用的主机/私钥:

Host <bitbucket host>
  IdentityFile <path to ssh private key>