回到文章列表

[GIT101] 我如何理解 commit 的概念

TWGD / 2018-08-31

其實我在看 [GIT101] 之前就自己先預習了 Git,當時對 commit 的理解並沒有遇到什麼太大的問題。 不過看到 huli 用「資料夾」的概念來輔助解說 commit 時,讓我想起我當時是用什麼想法來幫助自己快速理解 commit。

把 commit 想成類似於 Dropbox 的「版本記錄」

因為長期使用 Dropbox 作為雲端及團隊協作共享空間,熟悉 Dropbox 有一個「版本記錄」的功能:可以讓檔案回復到之前版本 (一個月內)。剛學到 Git 的 commit 時,就馬上聯想到 Dropbox 的「版本記錄」:記錄每次檔案修改的編輯者、編輯時間等資訊。如果想要把檔案回復到過去的某個版本,只要選擇那個版本就好。(可以參考 這篇文章 對 Dropbox 操作版本記錄的圖)

「Git 的 commit 」及「選擇回復到某個 commit 的狀態」,我覺得跟 Dropbox 的「版本記錄」有幾分神似。把 commit 想成是 Dropbox 上的版本記錄。只是 Dropbox 是每次修改檔案的時候,會自動記載到「版本記錄」。而 Git 則是要自己手動添加 commit 記錄,想要什麼時候 commit 都可以自己決定。