如何在Mac下生成SSH Key (使用GitLab)

git是分布式的代碼管理工具,遠(yuǎn)程的代碼管理是基于ssh的,所以要使用遠(yuǎn)程的git則需要ssh的配置。簡(jiǎn)單的說(shuō),Git - 版本控制工具;Github是一個(gè)網(wǎng)站,提供給用戶(hù)空間創(chuàng)建git倉(cāng)儲(chǔ),保存用戶(hù)的一些數(shù)據(jù)文檔或者代碼等;GitLab是基于Git的項(xiàng)目管理軟件

首先,使用代碼管理工具把本地的代碼上傳到服務(wù)器時(shí)需要加密處理,加密傳輸?shù)乃惴ㄓ泻芏喾N,git可使用rsa,rsa要解決的一個(gè)核心問(wèn)題是,如何使用一對(duì)特定的數(shù)字,使其中一個(gè)數(shù)字可以用來(lái)加密,而另外一個(gè)數(shù)字可以用來(lái)解密。這兩個(gè)數(shù)字就是你在使用git和github或者gitlab的時(shí)候所遇到的public key也就是公鑰以及private key私鑰。

其中,公鑰就是那個(gè)用來(lái)加密的數(shù)字,這也就是為什么你在本機(jī)生成了公鑰之后,要上傳到github的原因。從github發(fā)回來(lái)的,用那公鑰加密過(guò)的數(shù)據(jù),可以用你本地的私鑰來(lái)還原。如果你的key丟失了,不管是公鑰還是私鑰,丟失一個(gè)都不能用了,解決方法也很簡(jiǎn)單,刪除原有的key,重新再生成一次,然后在github或gitLab里再設(shè)置一次就行

在個(gè)人電腦生成ssh密鑰后,會(huì)同時(shí)生成一個(gè)公開(kāi)密鑰和一個(gè)私有密鑰,默認(rèn)情況下在用戶(hù)主目錄下的.ssh目錄中,密鑰為id_rsa,公開(kāi)密鑰為id_rsa.pub。
可以使用快捷功能鍵 shift+command+g 輸入 ~/.ssh進(jìn)行查看

1. 查看是否已經(jīng)存在了

打開(kāi)電腦終端,輸入以下命令:ls -al ~/.ssh

如果沒(méi)有 ~/.ssh 文件夾,則需要手動(dòng)創(chuàng)建一個(gè)

2.步驟2. 生成/設(shè)置SSH Key

繼續(xù)上一步可能出現(xiàn)的情況

(1)情況一:終端出現(xiàn)文件id_rsa.pub 或 id_dsa.pub,則表示該電腦已經(jīng)存在SSH Key,此時(shí)可繼續(xù)輸入命令:pbcopy < ~/.ssh/id_rsa.pub

這樣你需要的SSH Key 就已經(jīng)復(fù)制到粘貼板上了,然后進(jìn)行步驟3

(2)情況二:終端未出現(xiàn)id_rsa.pub 或 id_dsa.pub文件,表示該電腦還沒(méi)有配置SSH Key,此時(shí)需要輸入命令:ssh-keygen -t rsa -C "your_email@example.com"

(注意,這里的 your_email@example.com 是你自己的郵箱,選一般的常用的郵箱即可,筆者當(dāng)時(shí)用的是騰訊企業(yè)郵箱,就出現(xiàn)了一點(diǎn)小問(wèn)題,所以不常用的郵箱一般不推薦) 默認(rèn)會(huì)在相應(yīng)路徑下(/your_home_path)生成id_rsaid_rsa.pub兩個(gè)文件,此時(shí)終端會(huì)顯示:
Generating public/private rsa key pair. Enter file in which to save the key (/your_home_path/.ssh/id_rsa):

連續(xù)回車(chē)即可,也可能會(huì)讓你輸入密碼,密碼就是你的開(kāi)機(jī)密碼

此時(shí)再輸入命令:ls -al ~/.ssh 就會(huì)出現(xiàn)id_rsa.pub 和 id_dsa.pub兩個(gè)文件,然后重復(fù)情況一的步驟即輸入以下命令再進(jìn)行步驟3即可:pbcopy < ~/.ssh/id_rsa.pub

步驟3.將SSH Key添加到GitLab中就可以了

?著作權(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)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

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