git中ssh key配置详解

(编辑:jimmy 日期: 2024/12/23 浏览:2)

git clone支持https和git(即ssh)两种方式下载源码:

git中ssh key配置详解

当使用git方式下载时,如果没有配置过ssh key,则会有如下错误提示:

git中ssh key配置详解

下面就介绍一下如何配置git的ssh key,以便我们可以用git方式下载源码。

首先用如下命令(如未特别说明,所有命令均默认在Git Bash工具下执行)检查一下用户名和邮箱是否配置(github支持我们用用户名或邮箱登录):

git config --global --list 

笔者的机器显示信息如下(已配置):

git中ssh key配置详解

如未配置,则执行以下命令进行配置:

git config --global user.name "这里换上你的用户名"
git config --global user.email "这里换上你的邮箱"

然后执行以下命令生成秘钥:

ssh-keygen -t rsa -C "这里换上你的邮箱"

执行命令后需要进行3次或4次确认:

  • 确认秘钥的保存路径(如果不需要改路径则直接回车);
  • 如果上一步置顶的保存路径下已经有秘钥文件,则需要确认是否覆盖(如果之前的秘钥不再需要则直接回车覆盖,如需要则手动拷贝到其他目录后再覆盖);
  • 创建密码(如果不需要密码则直接回车);
  • 确认密码;

执行过程如下图:

git中ssh key配置详解

在指定的保存路径下会生成2个名为id_rsa和id_rsa.pub的文件:

git中ssh key配置详解

再打开你的github,进入配置页:

git中ssh key配置详解

选择SSH and GPG keys项:

git中ssh key配置详解

之前生成的是ssh秘钥,所以下面选择New SSH key(笔者这里已经配置了一个key,如果是未配置秘钥的用户,这里应该是空的):

git中ssh key配置详解

然后用文本工具打开之前生成的id_rsa.pub文件,把内容拷贝到key下面的输入框,并为这个key定义一个名称(通常用来区分不同主机),然后保存:

git中ssh key配置详解

再次尝试用git方式下载,可以看到已经可以正常下载:

git中ssh key配置详解