Git ssh-key 配置问题

Posted blueheart0621

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git ssh-key 配置问题相关的知识,希望对你有一定的参考价值。

Git 配置 ssh-key 是为了识别并区分不同的主机,所以一台主机要使用 Git 进行远程仓库托管代码,首先要在本机生成 ssh-key,并配置到对应远程仓库网站(比如:Github、Gitee)。

1. 生成 ssh-key

在 git 终端输入:

ssh-keygen -t rsa -C "your email" 

然后git终端会询问保存路径(建议直接 enter,按默认路径保存;否则可能会出现 Permission denied 问题,此解决办法见下文)

以及密码设置(可设可不设)

2. 配置远程仓库网站

在 Github 或 Gitee 上找到添加 ssh 公匙选项,到刚才保存的 ssh-key 的路径下找到对应的 .pub 文件(此为公匙可外传,另一个为私匙不可外传),打开后将内容粘贴到 Github 或 Gitee 网站添加 ssh 公匙栏中。

3. 测试连接远程仓库网站

在 git 终端输入:

ssh -T git@github.com    //github网站 
ssh -T git@gitee.com    //gitee 网站 

如果是按默认路径保存 ssh-key,则 git 终端应该会返回以下内容:

Hi *** ! You‘ve successfully authenticated ***

此时说明成功连接远程仓库,可以开始在远程仓库托管自己代码了。

如果没有按照默认路径保存 ssh-key ,则可能会报错:

Permission denied (publickey).

4. 暂时解决上述问题

在 git 终端输入以下代码:

ssh-add path    //path 为你保存公匙的绝对路径 

如果报错:

Could not open a connect to your authentication agent

说明 ssh-agent 没有开启,输入以下代码开启:

ssh-agent bash 

或者

eval $(ssh-agent -s) 

但这样只能临时解决问题,重新打开 git 终端后发现又不好使了。

5. 永久解决上述问题

将代码:

eval $(ssh-agent -s) 
ssh-add path 

写到 git 的bashrc中。具体操作为:打开 git 安装目录,进入到 etc/ 中,编辑 bash.bashrc 文件,将上述代码添加至文件末尾。以后每次打开 git 终端就会自动执行上述代码。

以上是关于Git ssh-key 配置问题的主要内容,如果未能解决你的问题,请参考以下文章

git如何配置多个ssh-key

🔨Git 配置 SSH-KEY

Git配置多个SSH-Key

ssh-key 与 git账户配置以及多账户配置

git ssh-key 及邮箱的配置

Windows下Git多账号ssh-key(复制自己用)