GitLab 可以通过 SSH 进行 git 的操作,例如 clone、pull、push。SSH 相比 HTTPS 更加安全和快捷,但是需要配置好 SSH 密钥才能实现身份验证。本文将说明如何向 GitLab 添加 SSH 密钥。
1. 生成 SSH 密钥
如果您还没有 SSH 密钥,首先需要生成一个。您可以在命令行或终端中运行以下命令:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
这里的 -t rsa
表示使用 RSA 算法,-b 4096
指定密钥的长度为 4096 位,-C "your_email@example.com"
用于添加一个注释(通常是邮箱地址)。
你将会被提示:
- 指定一个保存密钥的文件路径(可以按回车使用默认路径
~/.ssh/id_rsa
)。 - 设置一个密码短语(可选,但强烈推荐以增加安全性)。
2. 添加 SSH 密钥到 SSH 代理(可选)
如果你使用了密码短语保护 SSH 密钥,建议添加密钥到 SSH 代理管理密钥。
启动 SSH 代理:
eval "$(ssh-agent -s)"
添加生成的 SSH 密钥到 SSH 代理:
ssh-add ~/.ssh/id_rsa
3. 复制 SSH 公钥
使用以下命令复制 SSH 公钥内容:
cat ~/.ssh/id_rsa.pub
将输出的内容复制到剪贴板。
4. 添加 SSH 密钥到 GitLab
- 登录到你的 GitLab 账户。
- 点击你的头像,然后选择 “Settings”(设置)。
- 在左侧导航菜单中,选择 “SSH Keys”(SSH 密钥)。
- 在 “Key” 字段中,粘贴之前复制的 SSH 公钥内容。
- 选择一个名字作为 “Title”(标题)来描述这个密钥。
- 点击 “Add key”(添加密钥) 按钮。
5. 验证配置
在终端中运行以下命令来测试 SSH 连接:
ssh -T git@gitlab.com
您应该会看到一个类似于下面的消息,提示您成功连接到 GitLab:
Welcome to GitLab, @your_username!
当然,你也可能看到其他提示,如 Connection closed. 如果没有报错,一般就说明可以正常连接。
6. 使用 SSH URL 克隆仓库
在 GitLab 页面中,找到您想要克隆的仓库。点击仓库页面中的 “Clone” 按钮,然后选择 SSH 方式,复制提供的 SSH URL。
在终端中使用该 URL 来克隆仓库:
git clone git@gitlab.com:your_username/your_repository.git
通过这些步骤,你已经成功地将 SSH 密钥添加到 GitLab,并可以通过 SSH 克隆、推送和拉取仓库了。