1.使用 git 客戶的生成公私鑰:id_rsa猛蔽、id_rsa.pub
1.1 設(shè)置Git的user name和email:
git config --global user.name "lkt"
git config --global user.email "lkt@temp.com"
1.2 生成SSH密鑰過程:
1.2.1.檢查是不是已經(jīng)存在密鑰(能進(jìn)去說明已經(jīng)存在腕侄,就刪掉文件夾,重新創(chuàng)建): cd ~/.ssh
1.3 生成 SSH 密鑰:
$ ssh-keygen -t rsa -C “xxx.mail@xxx.com”
按3個(gè)回車张漂,密碼為空。
1.4 文件存放位置 ~/.ssh谨娜,如果是window的話就在:C:\Users\Administrator.ssh 下面航攒,當(dāng)然如果你不是 Administrator 用戶的話,需要換成對(duì)應(yīng)的用戶趴梢。
2.設(shè)置 SourceTree 的 SSH客戶端
1.配置SourceTree 的 SSH 客戶的為:OpenSSH
1.1.工具->選項(xiàng)
1.2.設(shè)置 OpenSSH,這時(shí)候漠畜,SSH 密鑰這一欄自然會(huì)去選擇當(dāng)前用戶下的 .ssh 目錄下的 id_rsa 這個(gè)私鑰:
3.添加 ~/.ssh/id_rsa.pub 文件內(nèi)容到 git 服務(wù)器里面去
3.1. 比如你的 git 服務(wù)是 github,那么你需要在 https://github.com/settings/keys 里面添加 SSH key
3.2.SourceTree 來下載 git 項(xiàng)目
3.2.1. 復(fù)制你的 git 地址:git@github.com:xxxxxxxx/xxxxx.git
3.2.2. 從 SourceTree 里面新建一個(gè)地址垢油,這時(shí)候你發(fā)現(xiàn)你本地已經(jīng)可以下載遠(yuǎn)程的
git 代碼了
4.解釋:
1.ssh-keygen 是公鑰私鑰的非對(duì)稱加密方式:
1.1.公鑰:用于向外發(fā)布盆驹,任何人都能獲取圆丹。
1.2.私鑰:要自己保存滩愁,切勿給別人
2.公鑰私鑰加解密的原理
2.1.客戶端把自己的公鑰存放到要鏈接的遠(yuǎn)程主機(jī)上(相當(dāng)于我們把自己的
id_rsa.pub 存放到 git 服務(wù)器上)
2.2.客戶端要鏈接遠(yuǎn)程主機(jī)的時(shí)候,遠(yuǎn)程主機(jī)會(huì)向客戶的發(fā)送一條隨機(jī)的字符串辫封,客
戶的收到字符串之后使用自己的私鑰對(duì)字符串加密然后發(fā)送到遠(yuǎn)程主機(jī)硝枉,遠(yuǎn)程主
機(jī)根據(jù)自己存放的公鑰對(duì)這個(gè)字符串進(jìn)行解密,如果解密成功證明客戶端是可信
的倦微,直接允許登錄妻味,不在要求登錄。