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

时间:2012-03-07 19:39:19

标签: git github ssh-keys permission-denied

我认识的人正试图克隆我的github repo并直接对其进行更改。这是一个公共回购。他用我的读写访问链接克隆了它,他可以从回购中拉出来。问题是当他试图推送任何他得到错误

  

错误:对user2 / repo.git拒绝用户2的权限

他是user2而我是user1。我之前允许其他人使用不同的回购,我从来没有遇到过这个问题。我错过了允许他访问或改变github的东西吗?我在github的帮助页面上看过这个:

  

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

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

7 个答案:

答案 0 :(得分:6)

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

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

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

您还可以观看此octocast:http://screencast.com/t/m7yN19N4645h

答案 1 :(得分:6)

问题来自Windows Credential Manager,您只需要删除Windows Credential中的git帐户。我认为它会起作用。

控制面板 - >用户帐户和家庭安全 - >管理Windows凭据 - >删除github帐户

enter image description here

答案 2 :(得分:4)

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

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

ssh-add -D

然后尝试推动。

答案 3 :(得分:1)

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

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

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

答案 4 :(得分:1)

与我同样的问题。

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

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

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

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

答案 5 :(得分:1)

通过macOS中的Keychain Access更新凭据

  1. 在Finder中,搜索Keychain Access应用程序。
  2. 在Keychain Access中,搜索github.com。
  3. Keychain中的GitHub密码输入查找github.com的“internet password”条目。
  4. 相应地修改或删除条目。

答案 6 :(得分:1)

窗口用户遵循此:-

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

现在转到gitbash并照常进行

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