在 git add 后面可以指明要跟蹤的文件或目錄路徑。如果是目錄的話草添,就說明要遞歸跟蹤該目錄下的所有文件舌稀。(其實 git add 的潛臺詞就是把目標文件快照放入暫存區(qū)域聂儒,也就是 add file into staged area,同時未曾跟蹤過的文件標記為需要跟蹤围详。這樣就好理解后續(xù) add 操作的實際意義了朴乖。)
暫存操作會對每一個文件計算校驗和(即第一章中提到的 SHA-1 哈希字串),然后把當前版本的文件快照保存到 Git 倉庫中(Git 使用 blob 類型的對象存儲這些快照)助赞,并將校驗和加入暫存區(qū)域买羞。
當在執(zhí)行git add
命令時候
- 如果文件在工作區(qū)域已被跟蹤,那么直接將文件快照保存至暫存區(qū)雹食。
- 如果文件在工作區(qū)域未被跟蹤畜普,那么先將文件標識為跟蹤文件,然后再將文件快照保存保存至暫存區(qū)群叶。