本文參考自:SSH-keygen用法
很多朋友在用github管理項(xiàng)目的時候钓瞭,都是直接使用https url克隆到本地久免,當(dāng)然也有有些人使用SSH url克隆到本地宙拉。然而魔慷,為什么絕大多數(shù)人會使用https url克隆呢?
這是因?yàn)橛悴酰褂胔ttps url克隆對初學(xué)者來說會比較方便洒嗤,復(fù)制https url然后到git Bash里面直接用clone命令克隆到本地就好了。而使用SSH url克隆卻需要在克隆之前先配置和添加好SSH key 魁亦。
因此渔隶,如果你想要使用SSH url克隆的話,你必須是這個項(xiàng)目的擁有者洁奈,否則你是無法添加SSH key的间唉。
https 和 SSH 的區(qū)別:
1绞灼、前者可以隨意克隆github上的項(xiàng)目,而不管是誰的呈野;而后者則是你必須是你要克隆的項(xiàng)目的擁有者或管理員镀赌,且需要先添加SSH key ,否則無法克隆际跪。
2商佛、https url在push的時候是需要驗(yàn)證用戶名和密碼的;而SSH在push的時候姆打,是不需要輸入用戶名的良姆,如果配置SSH key的時候設(shè)置了密碼,則需要輸入密碼的幔戏,否則直接是不需要輸入密碼的玛追。
在github上添加SSH key的步驟:
1、首先需要檢查你電腦是否已經(jīng)有SSH key
運(yùn)行g(shù)it Bash客戶端闲延,輸入如下代碼:
$ cd ~/.ssh
$ ls
這兩個命令就是檢查是否已經(jīng)存在 id_rsa.pub 或 id_dsa.pub 文件痊剖,如果文件已經(jīng)存在,那么你可以跳過步驟2垒玲,直接進(jìn)入步驟3陆馁。
2、創(chuàng)建一個SSH key
$ ssh-keygen -t rsa -C "your_email@example.com"
代碼參數(shù)含義:
-t 指定密鑰類型合愈,默認(rèn)是rsa 叮贩,可以省略。
-C 設(shè)置注釋文字佛析,比如郵箱益老。
-f 指定密鑰文件存儲文件名。
以上代碼省略了-f參數(shù)寸莫,因此捺萌,運(yùn)行上面那條命令后會讓你輸入一個文件名,用于保存剛才生成的SSH key代碼:
Generating public/private rsa key pair.
# Enter file in which to save the key (/c/Users/you/.ssh/id_rsa): [Press enter]
當(dāng)然膘茎,你也可以不輸入文件名桃纯,使用默認(rèn)文件名(推薦),那么就會生成id_rsa和id_rsa.pub兩個秘鑰文件辽狈。
接著又會提示你輸入兩次密碼(該密碼是設(shè)置你push文件的時候要輸入的密碼)慈参,
當(dāng)然呛牲,你也可以不輸入密碼刮萌,直接按回車。那么push的時候就不需要輸入密碼娘扩,直接提交到github上了:
Enter passphrase (empty for no passphrase):
# Enter same passphrase again:
接下來着茸,就會顯示如下代碼提示:
Your identification has been saved in /c/Users/you/.ssh/id_rsa.
# Your public key has been saved in /c/Users/you/.ssh/id_rsa.pub.
# The key fingerprint is:
# 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@example.com
當(dāng)你看到上面這段代碼的時候壮锻,那就說明,你的SSH key已經(jīng)創(chuàng)建成功涮阔,你只需要添加到github的SSH key上就可以了猜绣。
3、添加你的SSH key到github上面去
a敬特、首先你需要拷貝id_rsa.pub文件的內(nèi)容掰邢,你可以用編輯器打開文件復(fù)制,也可以用git命令復(fù)制該文件的內(nèi)容:
$ clip < ~/.ssh/id_rsa.pub
b伟阔、登錄你的github賬號辣之,從又上角的設(shè)置( Account Settings )進(jìn)入,然后點(diǎn)擊菜單欄的SSH key進(jìn)入頁面添加SSH key皱炉。
c怀估、點(diǎn)擊Add SSH key按鈕添加一個SSH key。把你復(fù)制的SSH key代碼粘貼到key所對應(yīng)的輸入框中合搅,記得SSH key代碼的前后不要留有空格或者回車多搀。當(dāng)然,上面的Title所對應(yīng)的輸入框你也可以輸入一個該SSH key 顯示在github上的一個別名灾部。默認(rèn)的會使用你的郵件名稱康铭。
4、添加你的SSH key到 gitLab上面去
如果你使用的不是github而是gitLab赌髓,那你可以登錄GitLab之后進(jìn)入下面目錄:
Profile Settings => SSH Keys => Add SSH key
輸入之前生成的公鑰麻削,標(biāo)題自定義。
這樣就行了春弥。