1. 程式人生 > 其它 >Git-gitee/github/gitlab賬號分離

Git-gitee/github/gitlab賬號分離

場景:

公司提供的賬號維護gitlab中的程式碼;自己的賬戶維護在githubgitee中的程式碼;

步驟一

分別對gitlab、github、gitee生成獨立的SSH

#進入 C:\Users\Administrator 開啟gitbash進行以下配置

#gitlab:
$ ssh-keygen -t rsa -f ~/.ssh/id_rsa.gitlab -C "公司提供的郵箱"

#github:
$ ssh-keygen -t rsa -f ~/.ssh/id_rsa.github -C "私人的郵箱"

#gitee:
$ ssh-keygen -t rsa -f ~/.ssh/id_rsa.gitee -C "私人的郵箱"

建一個config檔案(這個檔案沒有後綴)來控制三個SSH

$ touch ~/.ssh/config 

config:

#gitHub
    Host github.com
    HostName github.com
    User yangjing
    IdentityFile ~/.ssh/id_rsa.github

#gitLab 
    Host [email protected]
    HostName gitlab.com
    User yangjing
    IdentityFile ~/.ssh/id_rsa.gitlab

# gitee
    Host gitee.com
    HostName gitee.com
    User yangjing
    IdentityFile ~/.ssh/id_rsa.gitee

配置解釋:

  • Host
    它涵蓋了下面一個段的配置,我們可以通過他來替代將要連線的伺服器地址。
    這裡可以使用任意欄位或萬用字元。
    當ssh的時候如果伺服器地址能匹配上這裡Host指定的值,則Host下面指定的HostName將被作為最終的伺服器地址使用,並且將使用該Host欄位下面配置的所有自定義配置來覆蓋預設的/etc/ssh/ssh_config配置資訊。
  • Port
    自定義的埠。預設為22,可不配置
  • User
    自定義的使用者名稱,預設為git,可不配置
  • HostName
    真正連線的伺服器地址
  • PreferredAuthentications
    指定優先使用哪種方式驗證,支援密碼和祕鑰驗證方式
  • IdentityFile

    指定本次連線使用的金鑰檔案

步驟二

關聯遠端倉庫的使用者和郵箱

這裡公司專案(gitlab)使用全域性配置

$ git config --global user.name "yangjing"

$ git config --global user.email "公司提供的個人郵箱"

個人專案(gitee/github)在專案單獨配置

$ git config user.name "yangjing"

$ git config user.email "私人郵箱"

步驟三

gitlab/gitee/github的個人設定中找到配置SSH的地方,複製 ~/.ssh/id_rsa.xxx.pub 檔案內容貼上到配置sshkey的地方即可;

以gitee為例:

步驟四

測試一下

# 三個程式碼商都有自己獨特的字尾

#測試gitlab
ssh -T [email protected]

#測試gitbub
ssh -T [email protected]

#測試gitee
ssh -T [email protected]

以gitee為例:

出現如上圖資訊說明配置成功啦!

接下來就可以愉快的使用不同的賬戶管理對應的遠端倉庫啦!!!

虛心求教