Git的多賬號如何處理

1.同一臺電腦可以有2個git賬號(不同網站的)

首先不同網站,當然可以使用同一個郵箱,比如我的github,gitlab,bitbucket的賬號都是monkeysuzie[at]gmail.com
這時候不用擔心密鑰的問題,因為這些網站push pull 認證的唯一性的是郵箱
比如我的windows 上 2個賬號一個gitlab 一個github (用的都是id_rsa)

host github
  hostname github.com
  Port 22
host gitlab.zjut.com
  hostname gitlab.zjut.com
  Port 65095

不需要指定key的位置。因為默認讀取id_rsa了

這樣子使用起來沒有任何區別,remote 也想平時一樣操作即可。因為郵箱是相同的。

2.同一臺電腦有2個github賬號?咋辦

比如我服務器上模擬的2個用戶

#monkeysuzie@gmail.com   我在gitlab的第一個賬號suzie
host gitlab.zjut.com
    hostname gitlab.zjut.com
    Port 65095
    User suzie
    IdentityFile /home/suzie/.ssh/id_rsa
#  我在gitlab的第2個賬號test
host gitlab-test.zjut.com
    hostname gitlab.zjut.com
    Port 65095
    User test
    IdentityFile /home/suzie/.ssh/id_rsa_second
#837368104@qq.com 我在github的賬號 
host github-osteach.com
    hostname github.com
    Port 22
    User osteach
    IdentityFile /home/suzie/.ssh/id_rsa_second

這種情況下,需要幾點注意

1.remote pull push的時候有問題,因為要設置郵箱問題了
pull的時候識別的是郵箱,2個github賬號,2個郵箱,我們自然不能使用global的user.email了

1.取消global
git config --global --unset user.name
git config --global --unset user.email

2.設置每個項目repo的自己的user.email
git config  user.email "xxxx@xx.com"
git config  user.name "suzie"

之后push pull就木有問題了

備注

生成ssh key

ssh-keygen -m rsa -C "your mail" (當前目錄)
然后可以命名默認id_rsa 或者id_rsa_second 把對應的pub放到公共服務器上。

https://gist.github.com/suziewong/4378434

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容