Windows下Git配置ssh-key
1. 简介
Git 配置 ssh-key 是为了识别并区分不同的主机,所以一台主机要使用 Git 进行远程仓库托管代码,首先要在本机生成 ssh-key,并配置到对应远程仓库网站(Github、Gitee 等)。
2. 生成 ssh-key
在 Git 终端输入:
1 | ssh-keygen -t rsa -C "youremail" |
然后 Git 终端会询问保存路径(建议直接 enter
,按默认路径保存;否则可能会出现 Permission denied 问题,此解决办法见下文),以及密码设置(可设可不设)。
3. 配置远程仓库网站
在 Github 或 Gitee 上找到添加 ssh 公匙选项,到刚才保存的 ssh-key 的路径下找到对应的 .pub
文件(此为公匙可外传,另一个为私匙不可外传),打开后将内容粘贴到 Github 或 Gitee 网站添加 ssh 公匙栏中。
4. 测试连接远程仓库网站
在 Git 终端输入:
1 | ssh -T git@github.com # github 网站 |
-
如果是按默认路径保存 ssh-key,则 Git 终端应该会返回以下内容:
Hi *** ! You've successfully authenticated ***
;此时说明成功连接远程仓库,可以开始在远程仓库托管自己代码了。 -
如果没有按照默认路径保存 ssh-key ,则可能会报错:
Permission denied (publickey).
5. 暂时解决上述问题
在 Git 终端输入以下代码:
1 | ssh-add <path> # <path> 为你保存公匙的绝对路径 |
如果报错:Could not open a connect to your authentication agent
,说明 ssh-agent 没有开启。输入以下代码中的任一条进行开启:
1 | ssh-agent bash |
但这样只能临时解决问题,重新打开 Git 终端后发现又不好使了。
6. 永久解决上述问题
将以下代码写到 Git 的启动配置文件末尾,默认路径为 C:\Program Files\Git\etc\bash.bashrc
。以后每次打开 Git 终端就会自动执行以下代码找到对应的 .pub
公钥文件:
1 | eval $(ssh-agent -s) |