【问题标题】:git permission denied but for different usergit权限被拒绝但针对不同的用户
【发布时间】:2015-07-22 08:56:47
【问题描述】:

我正在尝试使用现有文件设置存储库。所以我按照source 中的简单说明进行操作,但在我尝试推送的最后一步时,出现此错误;

remote: Permission to abc/abc.git denied to abc@oldemail.com.
fatal: unable to access 'https://github.com/abc/abc.git/': The requested URL returned error: 403

然后我通过输出命令检查当前用户;

git config user.email

这会产生与上述错误不同的电子邮件。另外,尝试通过以下命令成功验证到 github。

ssh -T git@github.com

我只有一个 ssh-key 并且 ssh-agent 也被定义了。

关于如何进一步调试的任何建议?为什么它使用旧邮件而不是当前邮件?

谢谢!

附:我在运行 yosemite 的 Mac 上。

【问题讨论】:

    标签: git github permissions github-for-mac


    【解决方案1】:

    您似乎正在尝试连接 GitHub 无法识别/与您的帐户关联的电子邮件。

    您可以:

    A) 使用 git config 将电子邮件地址 https://help.github.com/articles/setting-your-email-in-git/ 更改为与您的 github 帐户关联的电子邮件地址。

    B) 在此处添加从“git config user.email”返回的电子邮件地址:https://github.com/settings/emails

    还要确保您对尝试推送到的存储库具有写入权限

    【讨论】:

    • 其实我的 github 邮件设置是正确的,它匹配了输出的邮件; git config user.email 以及 repo 是我的。我想问题是如何阻止 git 使用旧电子邮件,或者是否有一些缓存涉及我需要清除/更新以使用当前电子邮件?
    【解决方案2】:

    这与您的配置设置无关。

    这与您推送的部署密钥附加到另一个存储库有关。如果您与来自同一本地环境的两个不同(或更多)github 用户一起工作,就会发生一些事情。

    要查看您的本地系统以及您拥有哪些部署密钥,您可以在终端中运行:ls -al ~/.ssh

    这将显示您现有密钥的列表。

    我敢打赌,您已将其中一个密钥命名为您的电子邮件。

    所以它看起来像这样:

    -rw------- 1 bruger staff 3326 Jul 21 2020 abc@oldemail.com

    如果您关注Githubs own tutorial on setting up a deploy key,您很快就会有正确的设置连接到您的存储库而不会出现任何问题。

    更新

    我已经阅读了一段时间了,我发现 this post 说它与您的本地环境有关。

    例如,如果您使用的是 Mac,则可以在 Keychain Access 中删除您的凭据(搜索“github”),然后重试。

    您的计算机会保存最后一个推送凭据。您还可以通过git config.credential.helper查看更多信息

    【讨论】:

      猜你喜欢
      • 2017-10-21
      • 2016-10-30
      • 2020-07-30
      • 2011-12-15
      • 1970-01-01
      • 2017-04-30
      • 2018-04-15
      • 2017-05-23
      • 2013-08-17
      相关资源
      最近更新 更多