gitlab ssh-key 的问题

Trouble with gitlab ssh-key

在我的笔记本电脑中,我为 GitHub 添加了 SSH 密钥,而且效果很好。现在我要使用 GitLab。第一步是添加 SSH-Key 以克隆私有仓库。当我为gitlab添加SSH-Key并验证时,这里出现了问题

我也在我的主机文件中添加了:

当我尝试从 gitlab 克隆时,出现错误。

我看到您在 MinGW 中启动 SSH 代理以访问 GitLab,但之后您使用 PowerShell 以尝试克隆目标存储库。

首先,您是否检查过在SSH_AUTH_SOCK中加载了正确的代理?因为在我看来你在 PowerShell 中没有任何 ssh-agent 所以这就是给你错误的原因。

为了在 PowerShell 中启动 ssh-agent,您需要将其作为一项服务来执行,因此您只需执行

PS> Start-Service ssh-agent

或者如果您希望 ssh-agent 以 Windows 开头,您可以 运行(来自提升的 PS 提示):

PS> Set-Service ssh-agent -StartupType Automatic

之后你只需要添加一次你的 ssh 密钥,但是给那个代理:

PS> ssh-add "E:\SSH key\Gitlab\gitlab"

SSH 密钥权限错误

如果您的 SSH 私钥权限有误,您应该 运行 在提升的提示符 PowerShell 中执行以下命令:

icacls.exe "E:\SSH key\Gitlab\gitlab" /reset
icacls.exe "E:\SSH key\Gitlab\gitlab" /GRANT:R "$($env:USERNAME):(R)"
icacls.exe "E:\SSH key\Gitlab\gitlab" /inheritance:r

这将仅授予当前用户对该密钥的读取权限。