Git3-Git工作的基本原理

如果你了解Git工作的基本原則,然后使用Git將容易的多。

Git和其他VCS之間的主要區(qū)別是Git考慮的是存儲數(shù)據(jù)的方式。大部分的其他系統(tǒng)存儲為基于文件改變的列表的信息。這些系統(tǒng)(CVS,Subversion,Perforce等)認(rèn)為他們是一組文件,并隨著時間的推移記錄每個文件所做的更改信息。

1-1

上面這張圖可以很好的理解,我們在版本庫中有三個文件,他們都是版本1。
當(dāng)我們在某個時間點修改了File A 和 File C 這兩個文件,他們的版本都變成了版本2。而File B沒有做修改所以我們的版本管理程序沒有對它做任何標(biāo)記,只有在版本4的時候修改了File B這個文件的時候才會做記錄。

而Git和其他VCSS之間的一個重要區(qū)別,Git會認(rèn)為它的數(shù)據(jù)更像是一組小型文件系統(tǒng)的快照。
每當(dāng)你提交或保存了你的Git項目時,它主要負(fù)責(zé)創(chuàng)建文件快照,并存儲到該快照的引用。
為了提高效率,如果文件沒有改變,Git不會再次存儲該文件,只會創(chuàng)建一個相同文件的鏈接。
存儲在Git中的數(shù)據(jù)更像是一個快照流。

1-2

Git文件的三種狀態(tài)

2-1

Git項目的三個主要部分:版本庫,工作區(qū)和臨時區(qū)

工作區(qū)(Working Directory)
就是你在電腦里能看到的目錄,比如我的learngit文件夾就是一個工作區(qū):

1-1

版本庫(Repository)
工作區(qū)有一個隱藏目錄.git,這個不算工作區(qū),而是Git的版本庫。
Git的版本庫里存了很多東西,其中最重要的就是稱為stage(或者叫index)的暫存區(qū),還有Git為我們自動創(chuàng)建的第一個分支master,以及指向master的一個指針叫HEAD。

1-2

暫存區(qū)(stage 或者叫index)
你可以簡單理解為,需要提交的文件修改通通放到暫存區(qū),然后,一次性提交暫存區(qū)的所有修改。

基本的Git的工作流程

1.修改工作區(qū)下的文件。
2.將修改的文件放入暫存區(qū)。
3.將暫存區(qū)的文件提交到版本庫。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容