天天看點

Git--基本原理、分支管理機制

基本原理

哈希

哈希是一個系列的加密算法,各個不同的雜湊演算法雖然加密強度不同,但是有以下幾個共同點:

  • 不管輸入資料的資料量有多大,輸入同一個雜湊演算法,得到的加密長度固定。
  • 雜湊演算法确定,輸入資料确定,輸出資料能夠保證不變。
  • 雜湊演算法不可逆

Git底層采用的是SHA-1算法

雜湊演算法可以被用來驗證檔案。原理如下圖所示:

Git--基本原理、分支管理機制

Git就是靠這種機制來從根本上保證資料完整性的。

Git儲存版本的機制

集中式版本控制工具的檔案管理機制

以檔案變更清單的方式存儲資訊。這類系統将它們儲存的資訊看作是一組基本檔案和檔案随時間逐漸累積的差異。

Git--基本原理、分支管理機制

Git的檔案管理機制

Git把資料看作是小型檔案系統的一組快照。每次送出更新時Git都會對目前的全部檔案制作一個快照并儲存這個快照的索引。為了高效,如果檔案沒有修改,Git不再重新存儲該檔案,而是隻保留一個連結指向之前存儲的檔案。是以Git的工作方式可以稱之為快照流。

Git--基本原理、分支管理機制

GIt檔案管理機制細節

  • Git的“送出對象”
    Git--基本原理、分支管理機制
  • 送出對象及其父對象形成的鍊條
    Git--基本原理、分支管理機制

Git分支管理機制

分支的建立

Git--基本原理、分支管理機制

分支的切換

Git--基本原理、分支管理機制
Git--基本原理、分支管理機制
Git--基本原理、分支管理機制
Git--基本原理、分支管理機制