如何在一臺開發機中同時配置github、gitlab等多個賬戶

shayue111發表於2021-02-20

本文參考博文.

如果公司的程式碼同步環境在gitlab上,而自己有很多專案託管在github。我們需要做一些額外的配置實現兩者的無縫切換。

步驟

我的開發機是macbook,如果屬於不同系統,找到該系統下對應的路徑進行配置即可。

假設我們需要同時配置githubgitlab

  1. 進行.ssh資料夾
cd ~/.ssh/
  1. 使用命令ssh-keygen.ssh資料夾中生成祕鑰
# 為github生成祕鑰,執行以下命令後,將會在`.ssh`資料夾中生成兩個檔案,`id_rsa`和`id_rsa.pub`
ssh-keygen -t rsa -C "Github的註冊郵箱"

# 為gitlab生成祕鑰,執行以下命令後,將會在`.ssh`資料夾中生成兩個檔案,`gitlab_rsa`和`gitlab_rsa.pub`
# -f後是指定的檔名
ssh-keygen -t rsa -C "Gitlab的註冊郵箱" -f ~/.ssh/gitlab_rsa
  1. 配置config檔案
# 在.ssh資料夾內建立`config`檔案
vim config

# 在其中鍵入以下內容
# gitlab
Host gitlab
    HostName git.xxx.com # 這裡填你的gitlab的Host
    User git
    IdentityFile ~/.ssh/gitlab_rsa

# github
Host github.com
    HostName github.com
    User git
    IdentityFile ~/.ssh/id_rsa
  1. .ssh路徑下測試連線
# 測試gitlab
ssh -T git@gitlab

# 測試github
ssh -T git@github
  1. 不同專案的gitconfig配置,主要分為全域性配置global以及專案內部local
    一般來說,可以為經常使用的git賬戶設定global
  • global: 位於~/.gitconfig,其中設定的配置為全域性的git所使用
# 可以通過以下命令設定`global`級別的gitconfig
git config --global user.name '註冊名' 
git config --global user.email '註冊郵箱' 
  • local: 位於專案內./git/config,其中設定的配置為當前專案的git所使用
# 可以通過以下命令設定`global`級別的gitconfig
git config --local user.name '註冊名' 
git config --local user.email '註冊郵箱' 

結尾

有些同學可能還有gitee賬戶,配置的步驟和上面是一樣的。

相關文章