【问题标题】:ERROR: Permission to user1/repo.git denied to user2错误:对 user1/repo.git 的权限拒绝给 user2
【发布时间】:2012-03-25 08:42:43
【问题描述】:

我认识的某个人正在尝试克隆我的 github 存储库并直接对其进行更改。这是一个公共回购。他用我的读写访问链接克隆了它,他可以从 repo 中提取。问题是当他试图推动任何东西时,他得到了错误

错误:user1/repo.git 的权限被拒绝给 user2

他是user2,我是user1。我以前允许其他人使用不同的存储库,但我从来没有遇到过这个问题。我是否缺少允许他访问的内容或 github 是否发生了变化?我在 github 的帮助页面上看到了这个:

当您将密钥作为部署密钥附加到 repo1 时,会发生此错误。 您可以毫无问题地从该回购中推送和拉取,但您不会拥有 使用您的密钥访问任何其他存储库。要解决此问题,请删除密钥 来自 repo1 的部署密钥并将其附加到您的帐户页面上。 此密钥现在可以访问您的帐户有权访问的所有存储库。

我们没有弄乱部署密钥,但我在网上找不到任何其他解决方案。

【问题讨论】:

  • 检查您的电子邮件。 Github 刚刚修复了围绕其 ssh 密钥的漏洞,因此您需要重新批准任何 ssh 密钥才能使用它们。 github.com/settings/ssh/audit
  • 我已经验证了自己的密钥,但他今天添加了他的密钥并克隆了它。它说他也因此得到验证。
  • 转到控制面板->用户帐户->凭据管理器->Windows凭据->删除所有与git相关的凭据

标签: git github ssh-keys permission-denied


【解决方案1】:

GitHub 最近有一个minor security breach,因此,您需要登录并批准您个人资料中的每个有效 SSH 密钥。执行此操作的链接是:

https://github.com/settings/ssh/audit

如果您遇到问题,请参阅this 答案,了解如何生成您的 RSA 指纹。

【讨论】:

  • 这不起作用。我已经创建了第二个帐户来测试此错误。我用我的第二个帐户克隆了读写 SSH 链接,但我无法推送到我的第一个帐户创建的存储库。这是我在第二个帐户上创建的存储库。这是读+写链接,所以如果你能弄清楚如何推送它,我的问题就解决了。随心所欲,只是为了解决这个问题:git@github.com:gsingh2011/test.git
【解决方案2】:

我很愚蠢,没有将他们添加为合作者。

为此,请按照以下说明操作:

  1. 转到Repository > Admin > Collaborators
  2. 您将看到一个带有Add 按钮的文本框。为了添加合作者,您开始在文本框中输入,直到您看到实际的 在显示为您的下拉列表中向您建议的用户名 输入。
  3. 选择该用户名将导致出现绿色复选标记,表明系统已识别该用户名。
  4. Add 将该协作者添加到存储库。

您也可以观看这个八月广播:http://screencast.com/t/m7yN19N4645h

【讨论】:

  • 或设置>合作者
  • 这可以节省我的时间。谢谢
【解决方案3】:

您首先需要删除最后一个 ssh 连接。

要删除最后一个 ssh 连接,请执行以下命令:

ssh-add -D

然后尝试推动。

【讨论】:

    【解决方案4】:

    我也有同样的问题。

    如果您使用git config credential.helper store 缓存您的user1 凭据,则应将其从缓存文件中删除。

    您必须编辑您的凭据缓存的~/.git-credentials 文件。

    只需删除您不需要的帐户即可。

    https://user1:pass1@github.com
    https://user2:pass2@bitbucket.org
    

    【讨论】:

    • 谢谢!它有帮助 - 一直想知道第二个用户来自哪里..
    【解决方案5】:

    问题来自 Windows Credential Manager,你只需要删除那里的 git 帐户:

    控制面板——>用户账号和家庭安全——>管理Windows凭据——>移除github账号

    【讨论】:

    • OP 接受了他们自己的答案,所以这可能不是解决方案
    • 这是我的问题的解决方案。谢谢一百万!
    【解决方案6】:

    在 macOS 中通过 Keychain Access 更新您的凭据

    1. 在 Finder 中,搜索 Keychain Access 应用程序。
    2. 在 Keychain Access 中,搜索 github.com。
    3. 钥匙串中的GitHub密码条目找到github.com的“互联网密码”条目。
    4. 相应地编辑或删除条目。

    【讨论】:

      【解决方案7】:

      窗口用户遵循这个:-

      Go to CONTROL PANEL->USER ACCOUNT->Credential Manager->Windows Credential 
      ->delete all credential related to git
      

      现在转到 gitbash 并正常进行,

      将打开一个新的弹出窗口,询问您的用户名和密码。

      【讨论】:

        猜你喜欢
        • 2013-08-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-12-29
        • 1970-01-01
        • 2011-10-15
        • 2018-07-19
        • 2020-01-06
        相关资源
        最近更新 更多