首页 > 解决方案 > 无法推送到组织存储库,我是所有者

问题描述

我刚刚将我的一个 GitHub 页面转换为一个组织,并将我的个人 GitHub 用户名设置为该组织的所有者。但是,我仍然无法将更改写入 GitHub 存储库。我注意到这里建议的解决方案所有者无法推送到组织存储库提到他将所有用户的权限从读取更改为管理员。

我不想这样做,所以我不太确定是否有实际的解决方法。似乎所有者应该始终具有读/写权限。

这是我.git/config的万一这对任何事情都有帮助:

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
[remote "origin"]
    url = git@github.com:my-org-repo/leprechaun.git
    fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
    remote = origin
    merge = refs/heads/master

这是我在尝试推送时遇到的错误:

[root:kali:~/scripts/leprechaun]# git push origin master
ERROR: Permission to [obfuscated]/leprechaun.git denied to MyGitHubUsername.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

我已经确保我可以使用 SSH URL 毫无问题地克隆,所以我不太确定发生了什么。

命令输出示例

[root:kali:~/scripts/leprechaun]# ssh -T git@github.com
Hi [myuername]! You've successfully authenticated, but GitHub does not provide shell access.

标签: git

解决方案


编辑:请确保此解决方案仅在 Linux 中进行测试。
我不确定我发生了什么,但这是我修复它的方法!


第一步:
使用终端导航到您尝试使用推送的项目文件夹

第二步:
运行:

ssh -T git@github.com 块引用

你应该得到这样的回应:

git@github.com:权限被拒绝(公钥)。块引用

第三步:
使用 ssh-add 将您的所有者 ssh 密钥添加到 ssh 代理

ssh 添加 ~/.ssh/SOMEFOLDER/SOMESSHKEY。

使用您的密码解锁密钥并添加身份,剩下的就是验证您是否可以使用 ssh 进行连接,因此请使用第二步重试

如果您收到这样的消息:

嗨{您的所有者用户名在这里}!您已成功通过身份验证,但 GitHub 不提供 shell 访问权限。

恭喜!!您现在可以毫无问题地推送提交。


推荐阅读