2013年3月3日 星期日

git的物件型態

在物件儲存中,git僅使用了四種型態的物件:

1.  BLOBs, Binary Large OBjects (二進位的大型物件):
   
 檔案的每個版本都是由Blob所組成的。而這個詞彙被廣泛使用在資訊界,泛指可以儲存任何型態資料的檔案變數,而且使用BLOBs的程式是並不會在意其內部結構的,因為BLOB型態的資料不易理解,因為它並沒有包含任何關於檔案的資訊,甚至檔案名稱都沒有。

2.  Tree:
     樹狀物件代表一個階層的目錄資訊。它記錄著
     I.  BLOB辨識碼
    II.  BLOB的路徑名稱
   III.  以及在這個目錄中所有檔案的一些資訊。

     樹狀物件本身也可以遞迴的參考其他子樹物件,然後建立出完整的檔案以及子目錄的階層架構。


3.  Commits(送交): 
---  送交物件擁有每次容器更動時的所有資訊,包含了作者、送交者、送交的時間以及歷史紀錄訊息等。

---  每次的送交都會指向一個樹狀物件,這個物件紀錄了送交當下該容器的狀態。(除了最一開始的送交沒有"父送交物件",而大多數的送交都會有一個"父送交物件")


4.  Tags(標籤):
     
標籤物件將人類易讀的名字賦予給特定物件(通常是Commits送交物件)


沒有留言:

張貼留言