git版本控制管理的學習(二)——索引探索

git維護兩個主要的數據結構:對象庫和索引。

對象庫包含原始的數據文件和所有的日誌消息、作者信息、日期,以及其他任意重建版本或分支的信息。

包含四種類型:塊(blob)、目錄樹(tree)、提交(commit)和標籤(tag)。

   塊:文件的每個版本表示爲一個塊。

   目錄樹:一個目錄樹對象代表一層目錄的信息。

   提交:保存版本庫中每一次變化的元數據,包括作者、提交者、提交日期和日誌消息。

   標籤:分配一個任意的名字給一個特定的提交對象。

索引:暫時的信息,並且在需要時可以進行修改。臨時的、動態的二進制文件,描述整個版本庫的目錄結構。

注:git對象庫被組織成一個內容尋址的存儲系統。其產生的全局唯一標識符是通過對內容進行散列計算出的。

git將所有文件分爲:以追蹤的(tracked)、忽略的(ignored)和未追蹤的(untracked)

git ls-files --stage命令查看隱藏在對象模型下的東西,並且可以找到暫存文件的SHA1值。

git commit --all命令暫存所有已知的和修改的文件,並提交它們。

如:在修改之前已經提交過相關文件,那在修改後此文件無論是否在索引中,使用git commit --all命令都會自動提交到版本庫中。

git rm命令從索引或同時從索引和工作目錄中刪除文件。

git rm --cached filename 命令只是從索引中刪除文件,並把它保留在工作目錄下。

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