git 檔案追蹤機制
究竟 Git 是如何追蹤檔案變化的呢?我們藉由上圖來帶入一個情境:
當我們建立數據庫後,立即新增一個檔案時,用
git status
查詢,會發現它是在Untracked
狀態。這就表示此檔案還沒進到版本控制,藉由
git add .
將檔案加入到索引 (Staged) 後,準備提交成一個 commit 版本。藉由
git commit -m <提交訊息>
後,該檔案就會開始被追蹤,檔案狀態就會變成UnModified
狀態。
觀念驗證
我們繼續拿上個章節建立的兩個 commit,繼續建立第三個 commit,那就是加入標題樣式
。
- 步驟一:編輯
index.html
,加入一個 h1 - 步驟二:編輯
all.css
,插入 h1 樣式 - 步驟三:兩個檔案都儲存後,用
git status
查詢
回饋會像是下圖,兩個檔案的狀態都變成 modified
。
那麼我們假使再新增一個檔案,例如 page.html
呢?會如下圖,該檔案會是 Untracked
狀態。Git 追蹤到我編輯了兩個檔案,新增了一個檔案。
目前這些檔案都還在工作目錄
上,等待被使用 git add .
指令全部加到索引。如下圖所示:
- 當我用
git add .
指令時,三個檔案都會被加入到索引 - 當我使用
git commit -m "加入標題樣式"
後,就會提交成一個 commit
如此一來,使用 git log
就可以看到變成 3 個 commit 紀錄了。
影片複習
如果你照著上面步驟做完,接下來可以觀看我針對這兩節的教學,所錄製的影片來加深觀念。
個人練習
這裡會建議你在此先停下來,去多新增幾個版本,會刻意新增、刪除、編輯檔案,並用 git status
觀看檔案狀態,以加深你對 Git 流程上的觀念。