git 檔案追蹤機制

洧杰 已發佈 2019-11-16

images

究竟 Git 是如何追蹤檔案變化的呢?我們藉由上圖來帶入一個情境:

  1. 當我們建立數據庫後,立即新增一個檔案時,用 git status 查詢,會發現它是在 Untracked 狀態。

  2. 這就表示此檔案還沒進到版本控制,藉由 git add . 將檔案加入到索引 (Staged) 後,準備提交成一個 commit 版本。

  3. 藉由 git commit -m <提交訊息> 後,該檔案就會開始被追蹤,檔案狀態就會變成 UnModified 狀態。

觀念驗證

我們繼續拿上個章節建立的兩個 commit,繼續建立第三個 commit,那就是加入標題樣式

  1. 步驟一:編輯 index.html,加入一個 h1
  2. 步驟二:編輯 all.css,插入 h1 樣式
  3. 步驟三:兩個檔案都儲存後,用 git status 查詢

回饋會像是下圖,兩個檔案的狀態都變成 modified
images

那麼我們假使再新增一個檔案,例如 page.html 呢?會如下圖,該檔案會是 Untracked 狀態。Git 追蹤到我編輯了兩個檔案,新增了一個檔案。

images

目前這些檔案都還在工作目錄上,等待被使用 git add . 指令全部加到索引。如下圖所示:

  1. 當我用 git add .指令時,三個檔案都會被加入到索引
  2. 當我使用 git commit -m "加入標題樣式" 後,就會提交成一個 commit

images

如此一來,使用 git log 就可以看到變成 3 個 commit 紀錄了。

images

影片複習

如果你照著上面步驟做完,接下來可以觀看我針對這兩節的教學,所錄製的影片來加深觀念。

個人練習

這裡會建議你在此先停下來,去多新增幾個版本,會刻意新增、刪除、編輯檔案,並用 git status 觀看檔案狀態,以加深你對 Git 流程上的觀念。

關於筆者

暱稱:洧杰

介紹:六角學院校長,熱愛分享與交流的前端工程師,目前專注於兼容桌面/移動網頁前端開發,期間已協助數百位平面設計師,網頁設計師導入標準網頁設計。