git多賬戶設(shè)置解決方法總結(jié)和記錄。
場景:
在個人電腦上用不同用戶提交到不同的git遠(yuǎn)程倉庫上捏卓,尤其是公司代碼和私人代碼肴熏。
解決:
① 生成 自己的ssh key
ssh-keygen -t rsa -C "yourmail@mail.com"
然后輸入自己定義的名字愿待,比如:
id_rsa_self
之后會生成公鑰和私鑰文件:
id_rsa_self 和 id_rsa_self.pub
② 加載私鑰文件
ssh-add id_rsa_self
③將 公鑰
cat ~/.ssh/id_rsa_self.pub
內(nèi)容粘貼到自己的github或者其他第三方SSH公鑰上。
比如:
碼云上:(設(shè)置-SSH公鑰)
image.png
github上:(設(shè)置-SSH and GPG KEYS)
image.png
標(biāo)題自己定義疫剃,用于區(qū)分不同項目,
④ 創(chuàng)建config文件 (如果.ssh下有config文件則直接修改)
github
Host github.com
HostName github.com //公司或者自己第三方代碼庫地址
IdentityFile ~/.ssh/id_rsa_self //選擇自己在①中生成的私鑰
User XXXX // 設(shè)置用戶名
碼云
Host gitee.com
HostName gitee.com //公司或者自己第三方代碼庫地址
IdentityFile ~/.ssh/id_rsa_xxx //選擇自己在①中生成的私鑰
User XXXX // 設(shè)置用戶名
⑤測試
ssh -vT git@github.com
ssh -vT git@gitee.com
⑥ 在自己的項目根目錄設(shè)置用戶
先進(jìn)入自己項目根目錄硼讽,再 cd .git
設(shè)置本項目的用戶名和郵箱
git config user.name "yourname"
git config user.email "youremail"
如果重設(shè) 則:
git config --global --unset user.name
git config --global --unset user.email
⑦ 正常pull/push就好