本文參考博文.
如果公司的程式碼同步環境在gitlab
上,而自己有很多專案託管在github
。我們需要做一些額外的配置實現兩者的無縫切換。
步驟
我的開發機是macbook
,如果屬於不同系統,找到該系統下對應的路徑進行配置即可。
假設我們需要同時配置github
與gitlab
。
- 進行
.ssh
資料夾
cd ~/.ssh/
- 使用命令
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
- 配置
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
- 在
.ssh
路徑下測試連線
# 測試gitlab
ssh -T git@gitlab
# 測試github
ssh -T git@github
- 不同專案的
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
賬戶,配置的步驟和上面是一樣的。