将回购转移到新的Github组织后,在'git push`上拒绝许可

问题描述 投票:2回答:2

我最近设置了一个公共仓库,构建了一个简单的应用程序,一切都按预期工作。

最终我决定回购应该在一个公共组织下生活,以帮助鼓励捐款。所以我创建了一个新组织,然后将回购转移到新组织。我被设置为该组织的所有者(也是唯一的成员)。

然后我使用以下方法更新了我当地的remote

git remote set-url [new org repo URL]

git remote -v显示新的组织搜索URL。

我做了一些编辑(更新README中repo的链接)并做了一个git push origin master将更改推送到新的repo。

得到了:

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

git pull origin master成功返回。

我也尝试过:

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

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

我需要做什么其他git,repo和/或org权限更改?

git github github-organizations
2个回答
2
投票

在项目文件夹中

  • 转到.git文件夹并编辑config文件。
  • url=部分找到[remote "origin"]entry
  • 将网址更改为ssh://git@[new org repo URL]
  • 保存配置文件并退出。

现在你可以做git push origin master它应该工作

编辑

使用sshhttps的替代品。克隆你的回购时你应该被要求提供一个GitHub用户名和密码(假设你使用了https)。如果您启用了双因素身份验证,或者您正在访问使用SAML单点登录的组织,则必须提供个人访问令牌,而不是输入HTTPS Git的密码。如果您使用的是旧版本的git,则会发生此错误。


2
投票

切换到SSH URL是一种解决方法。 但是关于HTTPS URL,请检查:

  • 如果您的帐户有2FA activated
  • 如果你有一个Git凭证助手,请检查git config credential.helper的返回值。如果是,remove any GitHub entry,再次尝试推送:这将提示您的GitHub凭据(再次,如果您没有2FA)。
© www.soinside.com 2019 - 2024. All rights reserved.