同时在github和gitee配置密钥
1. 生成不同的 SSH 密钥
为每个平台生成单独的 SSH 密钥。
# 为 GitHub 生成密钥(默认文件路径为 ~/.ssh/github_id_rsa)
ssh-keygen -t rsa -b 4096 -C "your_github_email@example.com" -f ~/.ssh/github_id_rsa# 为 Gitee 生成密钥(默认文件路径为 ~/.ssh/gitee_id_rsa)
ssh-keygen -t rsa -b 4096 -C "your_gitee_email@example.com" -f ~/.ssh/gitee_id_rsa
执行命令后,根据提示按回车确认,设置密钥存储路径。可以为密钥设置密码,也可以直接回车跳过。
2. 添加 SSH 密钥到 SSH Agent(可选做这一步,一般不用)
将生成的密钥添加到 SSH Agent 以便使用。
# 启动 SSH Agent
eval "$(ssh-agent -s)"# 添加 GitHub 的密钥
ssh-add ~/.ssh/github_id_rsa# 添加 Gitee 的密钥
ssh-add ~/.ssh/gitee_id_rsa
3. 配置密钥到对应的平台
GitHub
- 登录 GitHub SSH 设置页面。
- 打开生成的 GitHub 公钥文件:
cat ~/.ssh/github_id_rsa.pub
- 将公钥内容复制到 GitHub 的新 SSH 密钥中,保存。
Gitee
- 登录 Gitee SSH 设置页面。
- 打开生成的 Gitee 公钥文件:
cat ~/.ssh/gitee_id_rsa.pub
- 将公钥内容复制到 Gitee 的新 SSH 密钥中,保存。
4. 配置 SSH Config 文件
为每个平台配置不同的 SSH 地址。
编辑或创建 ~/.ssh/config
文件,添加以下内容:
# GitHub 配置
Host github.comHostName github.comUser gitIdentityFile ~/.ssh/github_id_rsa# Gitee 配置
Host gitee.comHostName gitee.comUser gitIdentityFile ~/.ssh/gitee_id_rsa
保存并关闭文件。
5. 测试连接
测试 GitHub
ssh -T git@github.com
如果配置正确,会提示:
Hi <username>! You've successfully authenticated, but GitHub does not provide shell access.
测试 Gitee
ssh -T git@gitee.com
如果配置正确,会提示:
Welcome to Gitee.com, <username>!
6. 使用多个平台的远程仓库
克隆仓库时(直接复制平台的ssh链接即可):
- 对于 GitHub:
git clone git@github.com:username/repo.git
- 对于 Gitee:
git clone git@gitee.com:username/repo.git
推送或拉取:
Git 会根据 ~/.ssh/config
中的配置自动匹配正确的密钥。
enjoy!