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
这将仅授予当前用户对该密钥的读取权限。
在我的笔记本电脑中,我为 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
这将仅授予当前用户对该密钥的读取权限。