GitLab / GitHub 多賬戶下設(shè)置 ssh keys

問題的原因:

? ? 生成秘鑰的時候默認情況下每個賬戶生成的秘鑰位置和名稱都是相同的,這樣后生成的秘鑰就會覆蓋前面的秘鑰導致其失效,而 GitLab 和 GitHub 上雖有生成秘鑰的指引文章,但沒有特殊說明這塊。

解決方法:

? ? 在生成后一個秘鑰的時候?qū)ζ渲匦旅员苊鉀_突,同時將不同的秘鑰配置到相對應的Host上面,這樣在訪問不同的遠程倉庫時調(diào)用不同的key,沖突也就解決了。

具體操作:

生成 GitLab 秘鑰

本地生成ssh keys命令:ssh-keygen -t rsa -C "注冊的gitlab郵箱",生成的公司秘鑰會提示是否需要重命名,公司 GitLab 的秘鑰我們就使用默認名稱,直接回車跳過,另外還會提示你設(shè)置密碼,設(shè)置密碼的話后續(xù)登陸會比較麻煩,也直接跳過。

查看 .ssh/目錄(/Users/mac用戶名/.ssh/),可以看到公私秘鑰已經(jīng)生成,名稱分別為id_rsa.pub、id_rsa

執(zhí)行命令查看公鑰內(nèi)容:cat ~/.ssh/id_rsa.pub,或者直接用 Sublime Text2 編輯器打開id_rsa.pub。

將這部分代碼添加到到 GitLab 賬戶的的 SSH Keys 中即可。

生成 GitHub 秘鑰

終端執(zhí)行命令:ssh-keygen -t rsa -C "注冊的github郵箱",這次一定要注意,對生成定的秘鑰進行重命名,這里暫且重命名為 id_rsa_github ,同樣不設(shè)置密碼??梢钥吹缴傻墓矫罔€已經(jīng)分別被重命名為 id_rsa_github.pub 和 id_rsa_github。

可以查看公鑰里面的內(nèi)容:cat ~/.ssh/id_rsa_github.pub

添加到到 GitHub 賬戶的的 SSH Keys 中即可

GitLab 和 GitHub 的秘鑰是分開生成了,可怎么讓這兩份秘鑰分別對應到相應的遠程倉庫呢?就是讓id_rsa.pub認得gitlab,讓 id_rsa_github.pub 認得github。既然不能自動識別,那就只好手動設(shè)置了:

配置config

在.ssh/目錄下新建config文件:touch config,通過 Sublime Text2 編輯器進行如下配置:

# GitLab

Host gitlab ?(隨意取名)

HostName git.xxx.cn ?(公司的 GitLab host)

IdentityFile ~/.ssh/id_rsa

# GitHub

Host github

HostName github.com

IdentityFile ~/.ssh/id_rsa_github

檢測

ssh -T git@github

ssh -T git@gitlab

如果沒有報錯,就說明設(shè)置成功了~

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

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

  • GitLab是一個利用Ruby on Rails開發(fā)的開源應用程序,實現(xiàn)一個自托管的Git項目倉庫,可通過Web界...
    YHWXQ簡簡單單的生活閱讀 88,312評論 3 37
  • ssh公鑰登錄 一般在管理遠程主機時,都用ssh登錄,ssh user@host,但是這樣每次會使用密碼。 使用s...
    沉默寡言若有所思閱讀 11,636評論 0 6
  • 背景 公司最近將代碼由svn遷移到了gitlab來托管,我個人平時也經(jīng)常使用Github,可是公司郵箱與我的Git...
    洛城夜雨閱讀 2,061評論 0 5
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,533評論 19 139
  • 北宅櫻桃紅滿園,吃在嘴里透心甜。 春夏景色無限好,賞心悅目心釋然。
    菜根老譚Fighting閱讀 312評論 1 1

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