什麼是 Git?
Git 是一個分散式版本控制管理系統。
有別集中式版控系統需要有網路連接到專用伺服器去做更新,Git 可以在自己電腦上進行版控之後再上傳到伺服器做更新,這樣即使沒有網路或是伺服器壞了也不會有太大的影響。
另外 Git 在處理檔案的方式是用類似快照(snapshot)的方式,舉例來說:
版本 1:A、B
版本 2:A、B、C
在版本 1 新增了 A、B 兩個檔案,而在版本 2 又新增了 C 檔案並且 A、B 兩個檔案沒有做變動,這時 Git 就會紀錄新增的 C,而 A、B 則會指向版本 1 的檔案。
Git 指令操作界面
執行 Git 指令主要是在終端機(Terminal)上執行,雖然也有 GUI 圖形界面工具,但使用終端機可以更好去理解原理。
在 Linux 安裝 Git
在終端機中輸入下列指令:
sudo apt install git
這樣就安裝完成囉~
基本設定
安裝完後要做一些使用者設定,在每次使用 Git 提交時都會使用這些設定,並且在提交之後無法修改。
在開始使用 Git 之前先要在終端機裡面輸入以下指令來設定使用者名稱以及 Email:
$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com
設定完之後可以輸入以下指令來確認所輸入的內容:
git config --list
如果有設定成功,會出現以下畫面:
user.name "John Doe"
user.email johndoe@example.com
若沒有出現,回去檢查設定指令有沒有帶上 --global
,帶上 --global
就會讓所設定的內容儲存在 .gitconfig 設定檔之中。
此設定擋在 Linux 系統裡通常會在 ~/.gitconfig 的位置。
開始使用 Git
完成基本設定後,接下來就準備開始使用 Git 吧,可以跟著下列指令操作(# 後面為註解,可以不用輸入)
cd project # 移動到 project 目錄(或是自己作為練習用的目錄)
mkdir git_practice # 新增名為 git_practice 的目錄作為練習用
cd git_practice # 移動到 git_practice 目錄
git init # 對 git_practice 目錄進行初始化,並開始使用 Git 來版控此目錄
git init
是對當前所在的目錄進行初始化,並開始對目錄下的資料做版本控制。
在執行完這一步驟時,資料夾內會建立一個 .git 目錄,Git 就是使用 .git 目錄在做事。
以 .
開頭的檔案室隱藏檔案,如果看不到 .git 目錄,可以確認系統的隱藏檔案是否有開啟檢視,或是在終端機執行 ls -a
指令,輸入後可以看到所有目錄與檔案。
註:Ubuntu 可以直接按 CTRL + h
當今天不想要被 Git 監視某個目錄,該怎麼做?
既然 .git 是 Git 的工作場所,只要把 .git 刪除掉就行了。不過要注意刪掉 .git 之後如果想要之前的資料檔案版本就無法從 .git 裡面拿回,刪掉的 .git 也回不來。
參考資料
- 高見龍,《為你自己學 Git》