推送到非空 GitLab 回购时访问被拒绝

Access Denied when pushing to non-empty GitLab repo

我作为维护者被添加到 GitLab 项目中。所以当我第一次推送到空仓库时,它是成功的,能够将项目推送到仓库。 但是当我进行更改并尝试再次推送时,它发送了错误 access denied.

然后我在 GitLab 中创建了一个新的 repo,并在其中添加了一些其他项目。在空回购中我能够推送,但在那之后我无法推送到回购。

为什么我只能将我的提交推送到空的 GitLab 存储库中。

谁能告诉我为什么会这样。

供参考:这是我第一次使用GitLab。项目经理让我开一个GitLab账号。然后我做了一个并添加了一个 SSH 密钥。 我可以在 GitLab 网站上的项目中创建一个新分支,但不能用我的本地机器推送更改。

谢谢

推送权限不应根据 git 存储库状态(空或非空)而改变

通过切换到同一存储库的 HTTPS URL 并尝试推送来检查问题是否仍然存在:

cd /path/to/local/rpeository
git remote set-url https://gitlab.com/<aGroup>/<aProject>
git push -u origin master

您可能需要输入您的 GitLab 用户名和密码,但这至少可以验证问题是否仅限于 SSH URL。

我找到了解决方案。

实际上我的 ssh 密钥有问题。也许它没有设置正确。 当我检查

ssh -T git@gitlab.com

我意识到了。 所以我刚刚制作了另一个 ssh 密钥并将其添加到 GitLab 帐户中。如果有人有类似的问题或推送问题,这可能是原因之一。