因為你在指令中使用了環境變數,在不同的視窗環境下,寫法會稍微有一點點不同。
如果你使用的是 PowerShell 視窗,請輸入以下指令:
ssh -T -i “$env:USERPROFILE.ssh\your-key_ed25519” [email protected]
如果你使用的是傳統的 CMD 視窗,請輸入以下指令:
ssh -T -i “%USERPROFILE%.ssh\your-key_ed25519” [email protected]
當你按下 Enter 鍵執行之後,系統會連線到 GitHub 並回傳訊息,請根據畫面上顯示的文字來判斷結果:
如果畫面顯示 Hi 小帳的名字! 開頭的文字,代表這把金鑰已經正確設定在 小帳底下了。
如果畫面顯示 Hi max32002! 開頭的文字,代表這把金鑰目前被綁定到了錯誤的帳號。
目前系統檢查出來的結果依然顯示為 max32002 ,這代表你還需要去登入小帳的 GitHub 帳號,並將這把金鑰重新新增進去,才能正常使用。
實際執行上面句子, 會遇到錯誤因為
在 CMD 環境中,系統無法辨識以 $ 開頭的變數符號,因為那是 PowerShell 的專屬語法。如果在 CMD 裡使用,系統會找不到路徑。
請改用以下適合 CMD 的指令:
DOS
ssh -T -i "%USERPROFILE%\.ssh\your-key_ed25519" [email protected]
或是直接填入完整的絕對路徑:
DOS
ssh -T -i "C:\Users\max32\.ssh\your-key_ed25519" [email protected]
File: C:\Users\max32\.ssh\config
# Default GitHub account: max32002
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa
IdentitiesOnly yes
# GitHub account: max2little (use host alias: github-max2little)
Host github-max2little
HostName github.com
User git
IdentityFile ~/.ssh/max2little_ed25519
IdentitiesOnly yes
設定已經全部完成!以下是設定內容的摘要:
| 帳號 | SSH 主機名稱 | 金鑰名稱 |
| max32002 (預設, 大帳) | [email protected] | id_rsa |
| max2little (小帳) | git@github-max2little | max2little_ed25519 |
使用方法:未來在複製或設定 max2little 帳號的遠端儲存庫時,請將原本的 github.com 替換為 github-max2little。
範例指令如下:
Bash
git clone git@github-max2little:your-repo-name.git