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

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

步骤

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

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

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

2.生成SSH Key

输入命令

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

bash 复制代码
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类型的,可以输入:

bash 复制代码
cat ~/.ssh/id_rsa.pub

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

bash 复制代码
cat ~/.ssh/id_ed25519.pub

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

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

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

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

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

找到SSH Key的设置选项

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

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

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

点击"保存"或类似的按钮

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

相关推荐
irpywp7 分钟前
平台禁下载、格式不兼容、剪辑太麻烦,Media Downloader:mac 原生媒体下载工具,一站式解决视频下载、转码、裁剪、管理难题
macos·开源·github·音视频·媒体
Harvy_没救了2 小时前
【github 爆款】隐匿与通行:CloakBrowser 项目深度洞察报告
github
L_Xian3 小时前
StarrySky重新维护了,摆烂了一段时间,想想还是搞搞吧。
android·github·音视频开发
风起时Funchs3 小时前
我把 JetBrains 的 Git 客户端搬到了 VS Code
github
神奇椰子3 小时前
基于浪浪云轻量服务器与宝塔面板的CMS快速部署实践
运维·服务器·github
冴羽yayujs4 小时前
GitHub 热门项目-日榜(2026-05-13)
github
0vvv05 小时前
github拆分小批量上传文件
github
乐动心情5 小时前
RocksDB的代码分析报告
github
知识领航员15 小时前
蘑兔AI音乐深度实测:功能拆解、实测表现与适用场景
java·c语言·c++·人工智能·python·算法·github
morestrive19 小时前
基于 fabric.js 实现浏览器端矢量 PDF 导出
前端·github