年終了,突然關(guān)注到自己github上contributions的那張圖,發(fā)現(xiàn)沒(méi)幾個(gè)綠點(diǎn)。感覺(jué)有點(diǎn)不對(duì)勁,才發(fā)現(xiàn)由于今年換了工作,用的是公司郵箱創(chuàng)建的ssh key,所以commit提交并不能與個(gè)人github上的郵箱匹配~經(jīng)過(guò)一番猛如虎的操作,把commit中的公司郵箱地址換成個(gè)人github的郵箱地址,終fix!看著contributions圖,想著明年要點(diǎn)亮多少格子的時(shí)候,又發(fā)現(xiàn)一個(gè)問(wèn)題:公司gitlab和個(gè)人github會(huì)發(fā)生ssh key沖突。 解決方案方案一:同一個(gè)郵箱由于郵箱是識(shí)別的唯一手段,那么自然的,這兩者采用同一個(gè)郵箱,生成的 public key 也會(huì)是同一個(gè),上傳到 Github 或者 Gitlab 上面,在 Git 的配置中 ,設(shè)置好 Global 的配置 :git config –global user.name ‘EricYin’ && git config –global user.email ‘layupbolon@sina.com’ 進(jìn)行日常的開(kāi)發(fā)是沒(méi)有問(wèn)題的。 實(shí)際生活中采用同一個(gè)郵箱的可能性并不是太大,這就引出了方案二。 方案二:基于config文件所謂的方案二,原理上就是對(duì) SSH 協(xié)議配置 config 文件,對(duì)不同的域名采用不同的認(rèn)證密鑰。 1.配置 Git 用戶名、郵箱
2. 生成 ssh key 上傳到 Github/Gitlabssh key 默認(rèn)生成后保存在 ~/.ssh/目錄下 ,默認(rèn)為 id_rsa 和 id_rsa.pub 兩個(gè)文件,由于我們需要分開(kāi)配置,所以這么做:
在執(zhí)行完以上命令后會(huì)生成如下幾個(gè)文件 3. 配置 config 文件在 ~/.ssh目錄下,如果不存在,則新建 touch ~/.ssh/config文件 ,文件內(nèi)容添加如下:
4. 上傳public key 到 Github/Gitlab以gitlab為例:
5. 驗(yàn)證是否OK看到這些 Welcome 信息,說(shuō)明就是 OK的了。
|
|
來(lái)自: LibraryPKU > 《SoftwareEngineering》