github賬號(hào)與gitlab同一電腦下不同SSH Key配置

很多情況下,大家都會(huì)遇到一個(gè)問(wèn)題,自己電腦上配置的SSH Key可以與自己的gitbub賬號(hào)匹配,卻不能匹配公司內(nèi)部的git服務(wù)器賬號(hào),即gitlab。下面我將講述這兩種賬號(hào)的配置過(guò)程:

1. github賬號(hào)SSH Key配置

(1) 設(shè)置git的名字和郵箱,這點(diǎn)很重要,尤其是對(duì)于gitlab的配置

  git config --global user.name "你github的用戶名"
  git config --global user.email "你github的郵箱"
或者強(qiáng)制修改用戶名和郵箱
 git config --global --replace-all user.name "你github的用戶名"
  git config --global --replace-all user.email "你github的郵箱"

(2) 生成SSH Key

ssh-keygen -t rsa -C "你的github賬號(hào)對(duì)應(yīng)的郵箱"

可以看到結(jié)果如下,選擇默認(rèn),passphrase可以根據(jù)自己的需要設(shè)置。


(3)輸入cat id_rsa.pub獲取公鑰或者到本地公鑰保存的文件中獲取(C:/Users/你的主機(jī)名字/.ssh/id_rsa.pub)


(4)將公鑰加入到github中,選擇setting->SSH KEY添加即可。如下圖:


image

記住,這里的pub文件(公鑰)叫做id_rsa.pub

2. 配置gitlab 用戶名和郵箱

(1) 設(shè)置git的名字和郵箱,這點(diǎn)很重要,尤其是對(duì)于gitlab的配置

  git config --global user.name "你gitlab的用戶名"
  git config --global user.email "你gitlab的郵箱"

(2) 生成SSH Key,方法和上面類似

ssh-keygen -t rsa -C "GitLib" -b 4096

可以看到結(jié)果如下,選擇默認(rèn),passphrase可以根據(jù)自己的需要設(shè)置。


(3)輸入cat hty.pub獲取公鑰或者到本地公鑰保存的文件中獲取 (C:/Users/你的計(jì)算機(jī)名字/.ssh/hty.pub)


(4)將公鑰加入到gitlab中,如下圖:


1547018587(1).jpg

這里取名為hty.pub。

3. 配置兩種不同的SSH key

(1)首先需要將密鑰添加到SSH agent中,因?yàn)槟J(rèn)只讀取id_rsa,為了讓SSH識(shí)別新的私鑰,需將其添加到SSH agent中:

ssh-add ~/.ssh/hty

(2)如果出現(xiàn)Could not open a connection to your authentication agent的錯(cuò)誤,就試著用以下命令:

ssh-agent bash
ssh-add ~/.ssh/hty

(3)找到.ssh的默認(rèn)目錄,一般在C:\Users\Administrator目錄下,將git bash的工作目錄切換到該目錄,如下:

cd C:\Users\Administrator\.ssh

(4)創(chuàng)建config文件,內(nèi)容如下:

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

Host gitlab  
    HostName 你的gitlab項(xiàng)目域名 
    PreferredAuthentications publickey  
    IdentityFile ~/.ssh/hty  

我的配置如圖:


4. 驗(yàn)證是否正確

(1) 針對(duì)github,輸入指令:

ssh -T git@github.com
image

或者


(2) 針對(duì)gitlab, 輸入指令:

ssh -T git@gitlab
image

或者


以上結(jié)果,表示配置成功。如果失敗,請(qǐng)仔細(xì)閱讀上述步驟,或者給我留言,謝謝!

再獻(xiàn)上我的操作流程:
github配置過(guò)程:



gitlab配置過(guò)程:


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

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

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