# Windows上配置多個Git SSH公鑰的方法
## 背景需求
在開發工作中,我們經常需要同時管理多個Git賬戶(如公司GitLab、個人GitHub等)。每個平臺使用獨立的SSH密鑰可以提升安全性,但Windows系統默認只加載`id_rsa`密鑰。本文將詳細介紹如何配置多個SSH密鑰。
---
## 一、生成多個SSH密鑰對
1. 打開Git Bash,執行以下命令(以GitHub和GitLab為例):
```bash
# 生成GitHub密鑰
ssh-keygen -t rsa -b 4096 -C "github@example.com" -f ~/.ssh/id_rsa_github
# 生成GitLab密鑰
ssh-keygen -t ed25519 -C "gitlab@example.com" -f ~/.ssh/id_rsa_gitlab
-f
參數指定密鑰文件名~/.ssh
目錄下將生成四類文件:
id_rsa_github # 私鑰
id_rsa_github.pub # 公鑰
id_rsa_gitlab
id_rsa_gitlab.pub
在~/.ssh
目錄創建config
文件(無擴展名)
touch ~/.ssh/config
編輯配置文件示例: “`config
Host github.com HostName github.com User git IdentityFile ~/.ssh/id_rsa_github IdentitiesOnly yes
# GitLab公司賬戶 Host gitlab.company.com HostName gitlab.company.com User git IdentityFile ~/.ssh/id_rsa_gitlab
- `Host`:自定義別名(實際連接時使用)
- `IdentityFile`:指定對應私鑰路徑
---
## 三、將公鑰添加到Git平臺
1. 查看并復制公鑰內容:
```bash
cat ~/.ssh/id_rsa_github.pub | clip
執行以下命令測試配置:
# 測試GitHub連接
ssh -T git@github.com
# 測試GitLab連接
ssh -T git@gitlab.company.com
成功時會顯示:
Hi username! You've successfully authenticated...
對于已有倉庫,需修改remote地址:
git remote set-url origin git@github.com:user/repo.git
或克隆時使用SSH地址:
git clone git@gitlab.company.com:group/project.git
權限錯誤:
chmod 600 ~/.ssh/*
chmod 644 ~/.ssh/*.pub
代理問題:
在config
文件中添加:
ProxyCommand connect -H proxy.server.com:8080 %h %p
密鑰加載失敗: 重啟SSH代理:
eval $(ssh-agent -s)
ssh-add ~/.ssh/id_rsa_github
通過以上步驟,即可實現多平臺SSH密鑰的自動切換。此方法同樣適用于其他基于SSH的Git服務(如Gitee、Bitbucket等)。 “`
注:實際字符數約650字(含代碼塊)??筛鶕枰{整: 1. 增加/減少配置示例數量 2. 補充更詳細的問題排查步驟 3. 添加密鑰類型選擇的說明(如ED25519 vs RSA)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。