我在GitLab上创建了几个存储库,需要创建更多存储库。这在过去对我有用,但现在我再也无法访问了。
那么,请问,我该如何诊断和修复?
我的目标:我很快就会出国长期逗留。我想在我离开的时候在笔记本电脑上开展几个项目。
我尝试按照“现有Git存储库”的说明创建两个新项目:
https://gitlab.com/writersglen/AntsleBook
但在这两种情况下,当我尝试推动时,我会得到这个:
lloyd@wg-dev:~/WG/Books/Titles/Antsle$ git push -u origin --all
sign_and_send_pubkey: signing failed: agent refused operation
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.
据我所知,我在GitLab上有正确的公钥。
当我尝试从成功创建的存储库中提取时,我收到类似的消息。
所以,如果有些善良的人能告诉我如何摆脱这种混乱,我将非常感激。
祝福,
LRP
答案 0 :(得分:5)
您似乎尚未将私钥添加到本地计算机的ssh代理中。为此,请按照以下步骤操作:
eval $(ssh-agent)
ssh-add ~/.ssh/id_rsa
如果您使用密码创建密码,请按照提示输入密码。如果您创建了具有不同文件名和/或位置的密钥,请使用它而不是~.ssh/id_rsa
。
答案 1 :(得分:1)
我有同样的错误消息。在我的情况下,一些私钥具有太开放的权限。
我通过将私钥的权限更改为600 (-rw-------)
并将公钥更改为644 (-rw-r--r--)
来修复此问题
答案 2 :(得分:0)
如果您使用的是ubuntu,并且使用过Gitlab的手册来生成ssh密钥,那么我必须提到,他们提供的命令中存在问题。在该手册中,密钥是使用-o
命令中的ssh-keygen
生成的,但是gnome-keyring不支持此命令生成的密钥。更多信息,请访问:https://unix.stackexchange.com/a/351742/306361