Git基本理論(重要)
三個區域
Git本地有三個工作區域:工作目錄(Working Directory)、暫存區(Stage/Index)、資源庫(Repository或Git Directory)。如果在加上遠程的git倉庫(Remote Directory)就可以分為四個工作區域。文件在這四個區域之間的轉換關系如下:
Workspace:工作區,就是你平時存放項目代碼的地方
Index / Stage:暫存區,用于臨時存放你的改動,事實上它只是一個文件,保存即將提交到文件列表信息
Repository:倉庫區(或本地倉庫),就是安全存放數據的位置,這里面有你提交到所有版本的數據。其中HEAD指向最新放入倉庫的版本
Remote:遠程倉庫,托管代碼的服務器,可以簡單的認為是你項目組中的一臺電腦用于遠程數據交換
本地的三個區域確切的說應該是git倉庫中HEAD指向的版本:
Directory:使用Git管理的一個目錄,也就是一個倉庫,包含我們的工作空間和Git的管理空間。
WorkSpace:需要通過Git進行版本控制的目錄和文件,這些目錄和文件組成了工作空間。
.git:存放Git管理信息的目錄,初始化倉庫的時候自動創建。
Index/Stage:暫存區,或者叫待提交更新區,在提交進入repo之前,我們可以把所有的更新放在暫存區。
Local Repo:本地倉庫,一個存放在本地的版本庫;HEAD會只是當前的開發分支(branch)。
Stash:隱藏,是一個工作狀態保存棧,用于保存/恢復WorkSpace中的臨時狀態。
工作流程
git的工作流程一般是這樣的:
1、在工作目錄中添加、修改文件;
2、將需要進行版本管理的文件放入暫存區域;
3、將暫存區域的文件提交到git倉庫。
因此,git管理的文件有三種狀態:已修改(modified),已暫存(staged),已提交(committed)