【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添加到了远程仓库,并可以使用它来安全地推送和拉取代码了。

相关推荐
m0_694845573 小时前
tinylisp 是什么?超轻量 Lisp 解释器编译与运行教程
服务器·开发语言·云计算·github·lisp
June`3 小时前
muduo项目排查错误+测试
linux·c++·github·muduo网络库
weixin_6685 小时前
GitHub 2026年AI项目详细数据汇总表-AI分析-分享
人工智能·github
CoderJia程序员甲21 小时前
GitHub 热榜项目 - 日榜(2026-02-05)
ai·开源·大模型·github·ai教程
weixin_6681 天前
GitHub 2026年AI项目热度分析报告-AI分析-分享
人工智能·github
MicrosoftReactor1 天前
技术速递|GitHub Copilot CLI 斜杠命令速查表
github·copilot·cli
wu~9701 天前
GitHub永不遗忘,使用git push -f来覆盖的提交依旧保留
git·github
m0_694845571 天前
music-website 是什么?前后端分离音乐网站部署实战
linux·运维·服务器·云计算·github
独自破碎E1 天前
已经 Push 到远程的提交,如何修改 Commit 信息?
开发语言·github
jiang_changsheng1 天前
工作流agent汇总分析 2
java·人工智能·git·python·机器学习·github·语音识别