Git使用手冊/Git教程:生成SSH Key

檢查本機是否已經存在ssh key配置
使用目錄及文件方式驗證
進入~/.ssh/目錄

cd ~/.ssh/

若沒有該文件夾,則會提示No such file or directory,則表明無此配置。

若有該文件夾,會進入到文件夾中,此時使用ls查看文件夾內容。

若如圖所示存在1個以上文件,且存在2個文件名相同擴展名不同得文件,則表示之前存在過ssh key配置。

生成ssh key方式驗證
可以參考後續生成ssh key的內容。

生成SSH key
使用命令設置git的username和email:
git config --global user.name “xuzhangzheng“
git config --global user.email “[email protected]
其中xuzhangzheng和[email protected]爲你在gitHub或gitlab的用戶名和郵箱,如圖所示:

使用命令生成公鑰私鑰:
ssh-keygen -t rsa -C “[email protected]
這時會出現如圖粉色框選部分的提示: 
當出現Enter file in which to save the key時,直接敲回車即可。
注意:該句詢問的是你是否要將生成的密鑰存入名爲id_rsa的文件中。
敲回車的話相當於使用默認名稱id_rsa。
此處也可以輸入自定義名稱,輸入完畢後敲回車即可。
當出現Enter passphrase (empty for no passphrase)時,直接敲回車即可。
注意:該句是詢問你是否要設置密碼,該密碼允許爲空。所以不設置的話直接敲回車即可。
當出現Enter same passphrase again時,直接敲回車即可。
注意:該句是提示你輸入之前設置得相同得密碼,若之前設置了密碼,則該處需要填寫相同的密碼;若之前未設置密碼,此處直接敲回車即可。
上述操作完畢後,若出現如圖中綠色框選提示及框選下方得提示,表示已生成ssh key。
執行完成後,出現如下畫面即爲生成密鑰成功: 

同時,在~/.ssh/目錄下會生成2個文件:id_rsa和id_rsa.pub ,如圖所示:

id_rsa爲生成的私鑰,id_rsa.pub爲生成的公鑰。
後續會使用到私鑰和公鑰。
注意:
若在生成過程中,若出現如下圖提示的話,請看後續解決方案:

若電腦之前已經配置了ssh key的話,且存儲公鑰、私鑰的文件名稱也是默認的id_rsa命名的。當你在生成ssh key,出現Enter file in which to save the key提示是否需要修改存儲公鑰私鑰文件名稱時,若使用的是默認的文件名稱id_rsa的話,會出現如下提示:/c/User/Administrator/.ssh/id_rsa already exists     Overwrite(y/n)?
表示該文件已存在,是否覆蓋。
針對這種情況有3種解決方案:
1)在生成ssh key提示Enter file in which to save the key時,不使用默認生成的文件名稱id_rsa。如圖:

框選的部分便是自己設置的文件命名,同時生成ssh key後,我們在~/.ssh/目錄下ls查看一下內容,可以看到有xuzhangzheng@ljldata和[email protected]兩個文件,即爲公鑰和私鑰。
2)進入~/.ssh/文件夾中,執行rm 文件名命令,刪除指定文件後即可再生成存儲公鑰和私鑰文件。如圖:便沒有提示是否需要重寫覆蓋已存在文件的選項。

3)在提示/c/User/Administrator/.ssh/id_rsa already exists     Overwrite(y/n)?輸入y,選擇重寫之前的文件。如圖: 

重寫後使用ls在~/.ssh/查看內容,如圖: 

注意:如果選擇重寫覆蓋之前的文件的話,之前配置的ssh key就無法繼續使用了,故請謹慎選擇。
其中第二點和第三點產生得結果是一樣的,都可以實現生成ssh key的目的,但都存在一個問題,一但這樣操作的話,在此之前的賬戶就無法使用了,因爲公鑰和私鑰不存在了。
若使用第二點,不會出現是否重寫覆蓋之前文件的提示,原因是因爲直接把之前的ssh key文件刪除了,使用默認名稱id_rsa時系統檢測不存在該名稱的文件,故可以生成ssh key 。
若使用第三點,直接重寫覆蓋id_rsa文件,也能達到重新生成公鑰和私鑰的目的 。

至此,本機的ssh key已經生成好了。


相關文章:
關於SSH Key的使用和公鑰在gitHub、gitLab的配置等,請參考文章:Git使用手冊:使用SSH Key及配置SSH key公鑰
關於GIT 工作區、暫存區、本地倉庫、遠程倉庫的概念及關係,請參考文章:Git使用手冊:工作區、暫存區、本地倉庫、遠程倉庫
關於GIT 從遠程倉庫下載項目到本地工作區的操作,請參考文章:Git使用手冊:git clone 克隆下載遠程倉庫項目工程到本地工作區
關於GIT 分支使用詳解,請參考文章:Git使用手冊:git branch 分支操作、創建分支、查看分支、刪除分支、刪除本地分支、刪除遠程分支
關於GIT Checkout的使用,請參考文章:Git使用手冊:git checkout 創建分支、切換分支

關於Git status命令使用解讀,請參考文章:Git使用手冊:git status 查看本地工作區、暫存區中文件的修改狀態

關於Git diff和Git add命令使用,請參考文章:Git使用手冊:git diff 、 git add 、 git diff --cached 命令詳解

關於Git commit命令使用詳解,請參考文章:Git使用手冊:git commit -m/-am/-a -m 提交文件至本地倉庫區

關於Git fetch命令使用,請參考文章:Git使用手冊:git fetch 將遠程倉庫的分支及分支最新版本代碼拉取到本地

關於Git pull命令使用,請參考文章:Git使用手冊:git pull origin 拉取代碼到本地,解決拉取代碼時發生的文件衝突

關於Git push命令使用,請參考文章:Git使用手冊:git push 推送提交本地倉庫代碼文件到遠程倉庫

關於Git log命令使用,請參考文章:Git使用手冊/Git教程:git log 查看git提交日誌記錄


如您有其他問題,希望可以通過留言得形式及時交流,有書寫錯誤和可優化的地方也希望及時提出,感謝。
--------------------- 
作者:許章正 
來源:CSDN 
原文:https://blog.csdn.net/u013374164/article/details/78422968 
版權聲明:本文爲博主原創文章,轉載請附上博文鏈接!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章