Git常用術語 《Git Pro》總結

《Git Pro》英文原版
《Git Pro》中文版

爲什麼Git這麼流行,爲什麼使用Git?

版本控制系統(version control system,簡稱VCS)
版本控制是一種記錄一個或若干文件內容變化,以便將來查閱特定版本修訂情況的系統。

本地版本控制系統
在硬盤上保存補丁集(補丁是指文件修訂前後的變化);通過應用所有的補丁,可以重新計算出各個版本的文件內容。

集中化的版本控制系統(Centralized Version Control Systems,簡稱 CVCS)
有一個單一的集中管理的中央服務器,保存所有文件的修訂版本,而協同工作的人們都通過客戶端連到這臺服務器,取出最新的文件或者提交更新。

缺點
最顯而易見的缺點是中央服務器的單點故障。
如果宕機一小時,那麼在這一小時內,誰都無法提交更新,也就無法協同工作。
如果中心數據庫所在的磁盤發生損壞,又沒有做恰當備份,毫無疑問你將丟失所有數據——包括項目的整個變更歷史,只剩下人們在各自機器上保留的單獨快照。

分佈式版本控制系統(Distributed Version Control System,簡稱 DVCS)
在分佈式版本控制系統中,像Git、Mercurial、Bazaar 以及 Darcs 等,客戶端並不只提取最新版本的文件快照,而是把代碼倉庫完整地鏡像下來。這麼一來,任何一處協同工作用的服務器發生故障,事後都可以用任何一個鏡像出來的本地倉庫恢復。因爲每一次的克隆操作,實際上都是一次對代碼倉庫的完整備份。

Git術語及其作用

Git 保證完整性
Git 中所有數據在存儲前都計算校驗和,然後以校驗和來引用。
計算校驗和的機制叫做 SHA-1 散列(hash,哈希)。
這是一個由 40 個十六進制字符(0-9 和 a-f)組成字符串,基於 Git 中文件的內容或目錄結構計算出來。
SHA-1 哈希看起來是這樣:


e2adf8ae3e2e4ed40add75cc44cf9d0a869afeb6

Git三種狀態
Git倉庫(repo)
Git 倉庫目錄是 Git 用來保存項目的元數據和對象數據庫的地方。
這是 Git 中最重要的部分,從其它計算機克隆倉庫時,拷貝的就是這裏的數據。

工作目錄
工作目錄是對項目的某個版本獨立提取出來的內容。這些從 Git 倉庫的壓縮數據庫中提取出來的文件,放在磁盤上供你使用或修改。

暫存區域
暫存區域是一個文件,保存了下次將提交的文件列表信息,一般在 Git 倉庫目錄中。有時候也被稱作`‘索引’’,不過一般說法還是叫暫存區域。

Git工作流程
1.在工作目錄中修改文件。
2.暫存文件,將文件的快照放入暫存區域。
3.提交更新,找到暫存區域的文件,將快照永久性存儲到Git倉庫目錄。

提交(snapshot)
Git 的數據就像一組迷你文件系統的快照。每次在 Git 中提交或保存項目狀態時, Git 會立刻對所有文件進行拍照,並存儲這組快照的索引。

檢出/新建
倉庫中的內容被複制到工作目錄。文件、提交、分支等都可從倉庫檢出。

分支
當創造出一個新的開發線,並從開發主線分離後,就產生了一個分支。這條開發線可在不影響主線的同時繼續工作。
就像遊戲中的進度保存點,你可以把分支想象成遊戲中決定嘗試冒險之前點擊保存點的位置,若冒險失敗,就可以回到保存點。分支功能強大的關鍵在於,你可以在一個分支上創建保存點,然後切換到不同的分支再次創建保存點。

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