GitLab 配置 SSH 密钥完整教程

前言

在使用 GitLab 进行代码管理时,配置 SSH 密钥可以让我们免去每次推送/拉取代码时输入用户名和密码的麻烦。本文将详细介绍如何在 Windows 系统下配置 GitLab 的 SSH 密钥。

一、配置 Git 用户信息

首先,打开 CMD 命令提示符 或 PowerShell,配置你的 Git 全局用户名和邮箱:

git config --global user.name "你的用户名"

git config --global user.email "你的邮箱"

> 说明:这里的用户名和邮箱建议与你的 GitLab 账户保持一致。

二、生成 SSH 密钥对

执行以下命令生成 RSA 密钥对:

ssh-keygen -t rsa -b 4096 -C "你的邮箱"

参数说明:

  • -t rsa:指定密钥类型为 RSA
  • -b 4096:指定密钥长度为 4096 位(更安全)
  • -C:添加注释,通常使用邮箱作为标识

执行后会提示:

  1. 输入密钥保存路径(直接回车使用默认路径)
  1. 输入密钥密码(可直接回车跳过,不设置密码)
  1. 确认密码(再次回车)

三、找到公钥文件

生成的密钥对默认保存在以下路径:

C:\Users\你的用户名\.ssh\

该目录下会有两个文件:

  • id_rsa:私钥文件(请妥善保管,不要泄露!)
  • id_rsa.pub:公钥文件(需要添加到 GitLab)

四、添加公钥到 GitLab

  1. 用记事本或其他编辑器打开 id_rsa.pub 文件
  1. 复制全部内容(以 ssh-rsa 开头,以邮箱结尾)
  1. 登录 GitLab 网站
  1. 点击右上角头像 → Settings(设置)
  1. 在左侧菜单找到 SSH Keys
  1. 将复制的公钥内容粘贴到 Key 输入框
  1. 填写一个 Title(如:我的工作电脑)
  1. 点击 Add key 按钮

五、验证配置

配置完成后,可以通过以下命令验证是否成功:

ssh -T git@你的gitlab域名

如果看到类似 Welcome to GitLab, @用户名! 的提示,说明配置成功!

六、克隆代码

现在就可以使用 SSH 方式克隆代码了:

git clone git@gitlab.xxx.com:group/project.git

常见问题

Q1:提示 "Permission denied (publickey)"

  • 检查公钥是否正确添加到 GitLab
  • 确认私钥文件权限是否正确
  • 尝试使用 ssh-add 命令添加私钥

Q2:已有 SSH 密钥,不想覆盖怎么办?

可以在生成时指定不同的文件名,然后在 ~/.ssh/config 中配置多个密钥。

总结

步骤 命令/操作
1. 配置用户名 git config --global user.name "xxx"
2. 配置邮箱 git config --global user.email "xxx@xxx.com"
3. 生成密钥 ssh-keygen -t rsa -b 4096 -C "xxx@xxx.com"
4. 添加公钥 复制 id_rsa.pub 内容到 GitLab SSH Keys
5. 拉取代码 git clone git@gitlab.xxx.com:xxx/xxx.git

希望这篇教程对你有帮助!如有问题欢迎评论区交流~ 🎉

相关推荐
碳基沙盒1 天前
OpenClaw 多 Agent 配置实战指南
运维
蝎子莱莱爱打怪4 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes
埃博拉酱4 天前
VS Code Remote SSH 连接 Windows 服务器卡在"下载 VS Code 服务器":prcdn DNS 解析失败的诊断与 BITS 断点续传
windows·ssh·visual studio code
DianSan_ERP5 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
呉師傅5 天前
火狐浏览器报错配置文件缺失如何解决#操作技巧#
运维·网络·windows·电脑
不是二师兄的八戒5 天前
Linux服务器挂载OSS存储的完整实践指南
linux·运维·服务器
zhangfeng11335 天前
趋动云 如何ssh登录 服务区 项目server
运维·人工智能·ssh
ZeroNews内网穿透5 天前
谷歌封杀OpenClaw背后:本地部署或是出路
运维·服务器·数据库·安全
失重外太空啦5 天前
nginx
运维·nginx
Gofarlic_oms15 天前
避免Kisssoft高级分析模块过度采购的科学评估方法
大数据·linux·运维·人工智能·matlab