git配置多個(gè)ssh-key

在公司上班項(xiàng)目是push到公司自己搭的gitlab,平時(shí)自己的項(xiàng)目是push到github。他們分別使用的是不同的賬號。然后這樣就導(dǎo)致有不同的ssh-key,

Paste_Image.png

在工作的這段時(shí)間,一直都是使用gitlab的賬號,也是在做公司的項(xiàng)目,所以本地的ssh-key也是gitlab的。然后最近開始在github上寫插件,原本我是認(rèn)為只要將本地這個(gè)ss-key添加到github上面(ps:本地的ssh-key的email不是用github的email生成的,以為這是兩個(gè)不同的賬號),然后就可以push代碼到github上,然而,并不可以。然后就開始一頓瞎搞。

查看全局配置的name和email命令:
git config --global --list

Paste_Image.png

查看全局配置
git config -l

Paste_Image.png

配置全局的name和email:
git config --global user.name "issac"
git config --global user.email "issaxite@gmail.com"

刪除全局配置的name和email:
git config --global --unset user.name
git config --global --unset user.email

查看當(dāng)前項(xiàng)目的配置:
git config --local --list
配置當(dāng)前項(xiàng)目的name和email(非全局,全局的配置比當(dāng)前項(xiàng)目的優(yōu)先級要
![Uploading Paste_Image_669933.png . . .]
高):
git config user.name "issac"
$ git config user.email "issaxite@gmail.com"

生成新的ssh-key,使用:
ssh-keygen -t rsa -C "issaxite@email.com"
命令默認(rèn)生成的話,會覆蓋原有的ssh-key,因此為了共存,所以需要給新的ssh-key指定別名,有兩種方法可以指定別名生成ssh-key:
1:

Paste_Image.png

2.ssh-keygen -t rsa -C "issaxite@your.com” -f ~/.ssh/github-rsa //直接一條命令指定。

以上的兩條命令都會生成一個(gè)公鑰(xxx.pub)和一個(gè)私鑰

生成完之后,需要添加私鑰:
ssh-add ~/.ssh/id_rsa_issaxite

如果執(zhí)行ssh-add時(shí)提示"Could not open a connection to your authentication agent",可以現(xiàn)執(zhí)行命令(我是沒有出現(xiàn)這個(gè)問題):

可以通過 ssh-add -l 來確私鑰列表

$ ssh-add -l

可以通過 ssh-add -D 來清空私鑰列表

$ ssh-add -D
或者
ssh-agent bash
ssh-add ~/.ssh/id_rsa_issaxite

然后為了可以識別根據(jù)不同的服務(wù)識別不同的ssh-key,需要在.ssh文件夾下新建個(gè)config文件,個(gè)人認(rèn)為這個(gè)config的相當(dāng)于一個(gè)映射文件,看看配置的內(nèi)容就明白:

gitlab

Host git.hingyin.com //這個(gè)和你的clone的ssh的域名相關(guān)

Paste_Image.png
HostName git.hingyin.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa

github

Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_issaxite

然后是將公鑰添加到不同的git服務(wù)器,接著就可以測試一下,有沒有成功配置:
ssh -T git@github.com

參考鏈接:
http://jingyan.baidu.com/article/948f592414ad67d80ef5f966.html
http://www.cnblogs.com/zichi/p/4704824.html
https://my.oschina.net/stefanzhlg/blog/529403
使用ssh-key的原因:
https://gold.xitu.io/post/58a8f3295c497d005fbd58b1

插曲:
一個(gè)公鑰如果被一個(gè)github賬號在使用,那么另外一個(gè)github賬號就不能使用。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容