分布式版本控制系統(tǒng)
Git 是一種分布式版本控制系統(tǒng)啥寇。如圖:
從上圖,我們可以看出 Client (客戶端)是把代碼倉庫完整的鏡像下來了碟嘴。
Git 流程
這張圖簡介明了的介紹了整個 Git 的流程娜睛,箭頭線上的是七個最常用的 Git 命令。
Git 三大區(qū)域和三大狀態(tài)
根據(jù)上圖介紹一下 Git 中的常用名詞:
Working Directory (工作目錄)
工作目錄是對項目的某個版本獨立提取出來的內(nèi)容嗜傅,和 working tree 是相同的意思。 這些從 Git 倉庫的壓縮數(shù)據(jù)庫中提取出來的文件檩赢,放在磁盤上供你使用或修改吕嘀。這個目錄是個臨時目錄,臨時存儲你從 Git 庫中取出的文件贞瞒,這些文件一直會被保存偶房,直到下次提交。
對應(yīng)的狀態(tài):modified(已修改)
Git Directory(Git 目錄)
Git 倉庫目錄是 Git 用來保存所有項目的元數(shù)據(jù)和對象數(shù)據(jù)庫的地方憔狞。 這是 Git 中最重要的部分蝴悉,從其它計算機克隆倉庫時,拷貝的就是這里的數(shù)據(jù)瘾敢。
對應(yīng)的狀態(tài):committed(已提交)
Git Index(Git 索引)
如上圖,Index(大多時候叫做 Staging Area 暫存區(qū)域)是一個文件,保存了下次將提交的文件列表信息簇抵。
使用 git status 命令可以查看當前 Index 中的內(nèi)容:
? "Changes to be committed" 這句話下面的是在 Index 中的內(nèi)容庆杜,還未 commit 到 Git Directory;
?? "Changed but not updated" 這句話下面的是在 Working Directory 中修改了碟摆,還未 add 到 Index晃财;
??? "Untracked files" 這句話下面的是還未進行 track 的文件,使用 add 將其放入 Index典蜕。
對應(yīng)的狀態(tài):staged(已暫存)
感謝: