1.同一臺電腦可以有2個git賬號(不同網(wǎng)站的)
首先不同網(wǎng)站靖苇,當(dāng)然可以使用同一個郵箱,比如我的github,gitlab,bitbucket的賬號都是monkeysuzie[at]gmail.com
這時(shí)候不用擔(dān)心密鑰的問題啄踊,因?yàn)檫@些網(wǎng)站push pull 認(rèn)證的唯一性的是郵箱
比如我的windows 上 2個賬號一個gitlab 一個github (用的都是id_rsa)
host github
hostname github.com
Port 22
host gitlab.zjut.com
hostname gitlab.zjut.com
Port 65095
不需要指定key的位置。因?yàn)槟J(rèn)讀取id_rsa了
這樣子使用起來沒有任何區(qū)別刁标,remote 也想平時(shí)一樣操作即可颠通。因?yàn)猷]箱是相同的。
2.同一臺電腦有2個github賬號命雀?咋辦
比如我服務(wù)器上模擬的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
這種情況下蒜哀,需要幾點(diǎn)注意
1.remote pull push的時(shí)候有問題斩箫,因?yàn)橐O(shè)置郵箱問題了
pull的時(shí)候識別的是郵箱吏砂,2個github賬號撵儿,2個郵箱,我們自然不能使用global的user.email了
1.取消global
git config --global --unset user.name
git config --global --unset user.email
2.設(shè)置每個項(xiàng)目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" (當(dāng)前目錄)
然后可以命名默認(rèn)id_rsa 或者id_rsa_second 把對應(yīng)的pub放到公共服務(wù)器上狐血。