git Google源代码存储库拒绝权限

brccelvz  于 2022-12-17  发布在  Git
关注(0)|答案(4)|浏览(156)

我已经使用Google源代码库很多年了,现在当我尝试推送或拉取时,我的权限被拒绝了。
我能想到的都查过了:

  • 更新的gcloud:第一个月
  • 重新初始化:gcloud init
  • 已重新安装gcloud工具
  • 更新了git
  • 将存储库克隆到新目录(无权限)
  • 我仍然可以访问控制台:https://source.cloud.google.com/project/default
  • 关闭和重新打开的终端
  • 我是组织和项目的所有者,但我还添加了所有源存储库权限

上面的过程设置我的帐户和项目,所以这些都设置。
我刚刚在另一台计算机(Windows 10)上尝试,我没有被拒绝权限。该问题与我的Mac设置有关...
以下是一些例子:

$ git pull
remote: PERMISSION_DENIED: The caller does not have permission
remote: [type.googleapis.com/google.rpc.RequestInfo]
remote: request_id: "xxx"
fatal: unable to access 'https://source.developers.google.com/p/project/r/default/': The requested URL returned error: 403

$ gcloud source repos clone default --project=project
Cloning into '/Users/user/TMP/default'...
remote: PERMISSION_DENIED: The caller does not have permission
remote: [type.googleapis.com/google.rpc.RequestInfo]
remote: request_id: "xxx"
fatal: unable to access 'https://source.developers.google.com/p/project/r/default/': The requested URL returned error: 403
ERROR: (gcloud.source.repos.clone) Command '['git', 'clone', 'https://source.developers.google.com/p/project/r/default', '/Users/user/TMP/default', '--config', 'credential.https://source.developers.google.com/.helper=', '--config', 'credential.https://source.developers.google.com/.helper=!gcloud auth git-helper --account=me@example.com --ignore-unknown $@']' returned non-zero exit status 128.

$ git clone ssh://me@example.com@source.developers.google.com:2022/p/project/r/default
Cloning into 'default'...
me@example.com@source.developers.google.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
qcuzuvrc

qcuzuvrc1#

您可以做的第一件事是检查存储库详细信息,检查access level,需要将acces设置为write
然后转到工具-〉选项和身份验证并删除git saved password下的所有密码,或者您可以使用以下命令:
git config --system -l
您将得到credential.helper=!github --credentials
然后使用git config --system --unset credential.helper删除保存的凭据(确保您以管理员身份运行此命令)
有关删除凭据主题的详细信息,请参阅此link
如果删除凭据不起作用,下面的另一个链接可帮助您使用SSH或修改HTTPS URL来使用403 error

0wi1tuuw

0wi1tuuw2#

我发现this answer到另一个到另一个类似的问题。
我没有在那里提到的相同文件,但是我删除了~/.netrc,现在git可以工作了。
.netrc文件从2017年就在那里了。不知道为什么现在有了变化...

wlsrxk51

wlsrxk513#

我也经历了同样的事情。回购存在,我有正确的权限,但我还是得到了同样的错误。
您必须将ssh密钥添加到ssh代理

ssh-agent -s
ssh-add <pathtokey>

例如

ssh-add ~/.ssh/id_rsa

这对我很有效

ttp71kqs

ttp71kqs4#

您可能正在使用不受支持的标准RSA密钥。您需要使用其他算法。请尝试使用以下命令创建一个新算法:

ssh-keygen -t ecdsa -C "[USER_EMAIL]"

资料来源https://cloud.google.com/source-repositories/docs/authentication#ssh

相关问题