将存储库转移到新的 Github 组织后,“git Push”权限被拒绝

Bre*_*ody 2 git github github-organizations

我最近设置了一个公共存储库,构建了一个简单的应用程序,一切都按预期进行。

最终我决定该存储库应该由公共组织管理,以帮助鼓励贡献。所以我创建了一个新组织,然后将存储库转移到新组织。我被设置为该组织的所有者(也是唯一的成员)。

然后我remote使用以下命令更新了本地:

git remote set-url [new org repo URL]
Run Code Online (Sandbox Code Playgroud)

Agit remote -v显示新的组织存储库 URL。

我又进行了一些编辑(以更新自述文件中存储库的链接),并将git push origin master更改推送到新存储库。

并得到:

remote: Permission to [new org repo URL] denied to [user].
fatal: unable to access 'https://[user]@[new org repo URL]': The requested URL returned error: 403
Run Code Online (Sandbox Code Playgroud)

Agit pull origin master成功返回。

我也尝试过:

  • 将组织成员的默认权限更改为“写入”和“管理”
  • 删除了我的本地存储库,然后从新的组织存储库 URL 克隆,然后再次尝试推送
  • 在新组织下创建一个团队,然后将存储库添加到具有管理员权限的该团队

但仍然遇到权限被拒绝的问题。

我还需要进行哪些其他 git、repo 和/或组织权限更改?

Har*_*ode 5

在您的项目文件夹中,

  • 转到.git文件夹并编辑config文件。

  • 在部分下找到url=条目[remote "origin"]

  • 将网址更改为ssh://git@[new org repo URL]
  • 保存配置文件并退出。

现在你可以做git push origin master并且应该有效

编辑

使用ssh是 的替代方案https。当您克隆存储库时,系统应该会要求您提供 GitHub 用户名和密码(假设您使用的是https)。如果您已启用双因素身份验证,或者要访问使用 SAML 单点登录的组织,则必须提供个人访问令牌,而不是输入 HTTPS Git 的密码。如果您使用旧版本的 git,则可能会发生此错误。