【git】如何生成SSH key用于无需账号登录git仓库推送(需要令牌的问题)

发布于:2024-10-17 ⋅ 阅读:(71) ⋅ 点赞:(0)

在本机生成SSH Key的步骤相对简单,以下是一个通用的流程,适用于大多数操作系统(如Windows、Linux和macOS)。请注意,不同操作系统和工具(如Git Bash、Windows PowerShell等)的具体操作可能略有不同,但基本原理相同。

步骤

1.打开终端或命令提示符

  • 在Windows上,你可以使用Git Bash或Windows PowerShell。

  • 在Linux和macOS上,直接打开终端即可。

2.生成SSH Key

输入命令

在终端或命令提示符中,输入以下命令(这里以RSA类型为例,但你也可以选择ed25519等其他类型,具体取决于你的需求)

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
  • -t rsa 指定密钥类型为RSA。

  • -b 4096 指定密钥长度为4096位(这是目前推荐的长度,可以提供更好的安全性)。

  • -C "your_email@example.com" 是密钥的注释信息,通常填写你的邮箱地址,用于标识这个密钥。这里的your_email@example.com需要替换成你的实际邮箱地址。

按回车确认

在输入命令后,系统会询问你一些信息,如密钥的保存路径(如果不更改,则直接回车使用默认路径)、是否覆盖已存在的密钥(如果之前没有生成过密钥,则不会出现此提示)、以及是否需要设置密钥密码(如果不设置,则直接回车跳过)。

等待密钥生成

密钥生成过程可能需要一些时间,完成后,你会在指定的路径下看到两个文件:一个是私钥文件(默认为id_rsa),另一个是公钥文件(默认为id_rsa.pub)。在ed25519类型下,文件名会是id_ed25519id_ed25519.pub

3.查看SSH Key

查看公钥

你可以使用cat命令来查看公钥文件的内容。例如,如果你的密钥是RSA类型的,可以输入:

cat ~/.ssh/id_rsa.pub

或者,如果是ed25519类型的,则输入:

cat ~/.ssh/id_ed25519.pub

然后,将显示的内容复制到剪贴板中,以便稍后将其添加到GitLab、GitHub等远程仓库的SSH Key设置中。

查看私钥(通常不需要,除非有特殊需求)

同样地,你可以使用cat命令来查看私钥文件的内容,但出于安全考虑,通常不建议这样做。私钥应该保持私密,并且只在需要时提供给可信的系统或应用程序。

4.将公钥添加到远程仓库

登录到你的GitLab、GitHub等远程仓库账户

找到SSH Key的设置选项

点击“添加SSH Key”或类似的按钮

在标题框中输入一个易于识别的名称(可选)

在公钥框中粘贴你之前复制的公钥内容

点击“保存”或类似的按钮

完成以上步骤后,你就成功地将SSH Key添加到了远程仓库,并可以使用它来安全地推送和拉取代码了。