我最近设置了一个公共回购,构建了一个简单的应用程序,一切都按预期工作。
最终我决定回购应该在公共组织下生活,以帮助鼓励捐款。所以我创建了一个新组织,然后将回购转移到新组织。我被设置为该组织的所有者(也是唯一的成员)。
然后我使用以下内容更新了我本地的remote
:
git remote set-url [new org repo URL]
git remote -v
显示新的组织回购网址。
我做了一些编辑(更新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权限更改?
答案 0 :(得分:2)
在项目文件夹中
转到.git
文件夹并修改config
文件。
在url=
[remote "origin"]
条目
ssh://git@[new org repo URL]
现在您可以执行git push origin master
并且它应该可以正常工作
修改
使用ssh
是https
的替代方案。克隆你的回购时你应该被要求提供一个GitHub用户名和密码(假设你使用了https
)。如果您启用了双因素身份验证,或者您正在访问使用SAML单点登录的组织,则必须提供个人访问令牌,而不是输入HTTPS Git的密码。如果您使用旧版本的git,则会发生此错误。
答案 1 :(得分:2)
切换到SSH URL是一种解决方法 但是关于HTTPS URL,请检查: