git與sourcetree的那些事
資料儲存結構
-
先來了解下版本管理中的兩個概念,如下圖所示:
倉庫,可以理解為你的專案工程,即檔案專案的單位。分為本地倉庫、遠端倉庫和線上倉庫,其中本地倉庫就是你本地電腦上的專案檔案,遠端倉庫一般為github、Centos等雲端託管平臺,也可以是一臺伺服器,線上倉庫就是實際伺服器執行的專案。一般來說,為了安全起見,遠端倉庫和線上倉庫應該是不同的伺服器。
分支,可以理解為你專案內部的moudle,即檔案的模組。如張三模組分支、李四模組分支。 -
版本控制的資料流
在我們的實際專案中、利用git分散式版本管理器來管理我們的專案,其資料流向如下圖所示:如圖,整體流向分為三大塊:1為線上倉庫、2為遠端倉庫、3為本地倉庫。其中從下到上的資料儲存流程為:工作區分為兩個分支:master和zhibinm,當本地的工作區對該這兩個分支進行改變時,需要一個儲存操作,即C和D,叫做commit操作,然後這兩個分支可以進行合併操作,B即為merge操作;當本地倉庫需要提交儲存的檔案時,這時候需要push到遠端倉庫,當然遠端倉庫也可以通過pull操作到本地倉庫,遠端倉庫各分支之間也可以進行merge合併操作;最後是遠端倉庫部署到線上倉庫進行使用。
檔案傳輸中的公鑰和私鑰
- git傳輸協議
分為https(加密超文字傳輸協議)和ssl(安全外殼協議),ssl涉及到公鑰和私鑰。首先我們瞭解兩種加密演算法。 -
對稱加密演算法
其特點是加密金鑰和解密金鑰一樣的。
- 非對稱加密演算法
其特點是,加密的金鑰和解密的金鑰不一樣。加密的稱為公鑰,解密的稱為私鑰。
- 公鑰和私鑰的生成
開啟cmd,輸入指令程式碼:ssh-keygen -t rsa -C “your email”或者ssh-keygen -t rsa,並按回車3下(為什麼按三下,是因為有提示你是否需要設定密碼,如果設定了每次使用Git都會用到密碼,一般都是直接不寫為空,直接回車就好了)。會在一個資料夾裡面生成一個私鑰 id_rsa和一個公鑰id_rsa.pub。這裡說明一下公鑰和私鑰是成對出現的。 - 從遠端倉庫中獲取工程專案(以GitHub為例)
這裡我們用git的一個客戶端SourceTree來獲取專案,其中SourceTree個版本的下載點選這裡,選擇好版本下載安裝就好啦!上傳專案見這篇博文。
-
根據https得到專案
步驟如下:
- 根據ssl得到專案
首先做相關設定,主要是配置公鑰(SourceTree本地的git私鑰要配好):然後直接複製ssl的url進行pull即可。
最後附上相關視訊講解
相關文章
- Sourcetree(git GUI)安裝GitGUI
- Git&SourceTree學習Git
- SourceTree for Mac(Git客戶端工具)MacGit客戶端
- 說說Mongodb 與 MySQL的那些事MongoDBMySql
- 我與軟考的那些事兒
- IO模型與吃飯的那些事模型
- Sourcetree for mac(Git管理神器) 中文版MacGit
- 聊一聊Iterable與Iterator的那些事!
- 還在記git命令?快試試SourceTreeGit
- Windows搭建SourceTree、Git程式碼管理平臺WindowsGit
- Java 混淆那些事(六):Android 混淆的那些瑣事JavaAndroid
- DOM的那些事
- a>b的那些事
- WAF的那些事
- Volatile的那些事
- Synchronized的那些事synchronized
- module.exports與export那些事兒Export
- Vue 與 MVVM 之間那些事兒VueMVVM
- PHP基礎之與MySQL那些事PHPMySql
- Git--視覺化管理工具-SourceTreeGit視覺化
- XSS與字元編碼的那些事兒 ---科普文字元
- iOS CollectionView 的那些事iOSView
- https的那些事兒HTTP
- getComputedStyle方法的那些事
- webpack的那些事兒Web
- 微服務的那些事微服務
- 前後端分離與Node和NPM的那些事後端NPM
- 2018網際網路的成功與失敗的那些事
- IO那些事
- rem那些事REM
- PDF 那些事
- Eval家族的那些事兒
- 關於Cookie的那些事Cookie
- Apk 簽名的那些事APK
- 前端單測的那些事前端
- ZAB協議的那些事?協議
- 負載均衡的那些事?負載
- cpp:const引出的那些事