Mac 切換 多個 GitHub 賬號

KevinYang發表於2018-04-15

我們通常會有自己的 github 賬號和公司的 github 賬號,但是有時卻要在一臺電腦上使用這兩個賬號。
介紹一種切換github賬號的方法。
以工作賬號(work)和自己賬號(personal)為例。

為多個賬號設定 ssh keys

分別用不同 github 賬號對應的郵箱生成 ssh key

cd ~/.ssh
ssh-keygen -t rsa -C "私人賬號郵箱"
# 提示命名的時候以 id_rsa_personal 命名
ssh-keygen -t rsa -C "工作賬號郵箱"
# 提示命名的時候以 id_rsa_work 命名

將公鑰新增到對應的 github 賬號

新增配置檔案管理私鑰

Host personal ;USER_HOST為自定義host名字,如的personal和work
    HostName github.com ;SERVER_HOST為實際伺服器host,此時為GitHub
    User git ;USER_NAME為自定義名稱
    IdentityFile /Users/ykw/.ssh/id_rsa_personal ;PRIVATE_KEY為本地key
Host work
    HostName github.com
    User git
    IdentityFile ~/.ssh/id_rsa_work

更新 Identities

  1. 清除快取
    ssh-add -D
  2. 新增 keys
    ssh-add ~/.ssh/id_rsa_personal
    ssh-add ~/.ssh/id_rsa_work
  3. 檢視 keys
    ssh-add -l
  4. 測試 github 是否認可這些 key
    $ ssh -T personal
    Hi githubPersonal! You've successfully authenticated, but GitHub does not provide shell access.
    $ ssh -T work
    Hi githubWork! You've successfully authenticated, but GitHub does not provide shell access.

使用方法

  • 當再次 clone 一個新 Repos 時,如果其ssh地址為git@github.com:username/xxx.git,使用 git@company:username/xxx.git 即可。 (github.com 換成了自定義的 HOST(work) )
  • 對於已經存在的 repos 修改 remote url 即可。
本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章