首頁/名詞解釋/Commit 提交

階段 6 · 用 Git 管理與協作

Commit 提交

把一組程式碼修改保存成一個可追蹤版本。

先用一句話理解

把一組程式碼修改保存成一個可追蹤版本。

打個比方

像寫施工日誌,每次完成一段就記錄原因與內容。

什麼時候會遇到

每次完成一個小功能、修 bug 或調整文件後。

再往深一點看

Commit 是 Git 最基本的操作單位:你把一批程式碼修改「提交」進去,Git 就幫你記錄這次改了什麼、是誰改的、什麼時候改的,並產生一個唯一的 commit ID。一個 commit 就是一個可以還原的檢查點,好的 commit 應該只做一件事——修一個 bug、加一個功能、更新一段文件——而不是把三件事塞進同一個 commit。Commit message(提交說明)同樣重要,寫清楚「為什麼做這個改動」,之後查問題時才看得懂。每一個 branch 都由一串 commit 組成,PR 合併的本質就是把一個 branch 上的 commit 串接進 main。

舉個例子

你修好了一個登入失敗的 bug,改完之後執行 git commit -m "fix: 修正密碼錯誤時未清除錯誤訊息",這個修正就成為一個獨立的 commit。如果後來發現這次修改反而造成新問題,可以直接用 git revert 還原這一個 commit,不影響其他改動。

常見誤解

  • - 一次 commit 包含太多無關的修改(同時改了 UI、邏輯、修了三個 bug),未來要追 bug 或還原某個改動時,很難精準定位。
  • - Commit message 只寫「update」、「fix」或「WIP」,幾個月後根本看不出這次改了什麼,等同沒有留紀錄。
  • - 以為 commit 就等於上傳,push 之前沒確認 commit 的內容,把含有機密資料或錯誤設定的檔案一起 commit 進去了。

相關名詞

相關服務

GitHub

相關工具