Git系列2--版本庫(Repository)
阿新 • • 發佈:2018-12-20
什麼是版本庫呢?版本庫又名倉庫,英文名repository,你可以簡單理解成一個目錄,這個目錄裡面的所有檔案都可以被Git管理起來,每個檔案的修改、刪除,Git都能跟蹤,以便任何時刻都可以追蹤歷史,或者在將來某個時刻可以“還原”。
建立版本庫 (init)
我們先要確定要把哪個資料夾裡的檔案進行管理. 比如說我桌面上的一個叫 gitTUT
的資料夾. 然後在 Terminal (Windows 的 git bash) 中把當前目錄調到這個資料夾 gitTUT
, 我的做法是這樣:
$ cd ~/Desktop/gitTUT
為了更好地使用 git, 我們同時也記錄每一個施加修改的人. 這樣人和修改能夠對應上. 所以我們在 git 中新增使用者名稱 user.name
user.email
:
$ git config --global user.name "使用者名稱"
$ git config --global user.email "郵箱@email.com"
然後我們就能在這個資料夾中建立 git 的管理檔案了:
$ git init
# Initialized empty Git repository in /Users/使用者/Desktop/gitTUT/.git/
因為這個資料夾中還沒有任何的檔案, 它返回出來一句話告訴我們已經建立了一個空的 git 管理庫.
新增檔案管理 (add)
通常我們執行 $ ls
.git
是被隱藏起來的. 所以我們要執行這一句才能看到被隱藏的檔案:
$ ls -a
# . .. .git
建立一個新的 1.py
檔案:
$ touch 1.py
現在我們能用 status
來檢視版本庫的狀態:
$ git status # 輸出 On branch master # 在 master 分支 Initial commit Untracked files: (use "git add <file>..." to include in what will be committed) 1.py # 1.py 檔案沒有被加入版本庫 (unstaged) nothing added to commit but untracked files present (use "git add" to track)
現在 1.py
並沒有被放入版本庫中 (unstaged), 所以我們要使用 add
把它新增進版本庫 (staged):
$ git add 1.py
# 再次檢視狀態 status
$ git status
# 輸出
On branch master
Initial commit
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: 1.py # 版本庫已識別 1.py (staged)
如果想一次性新增資料夾中所有未被新增的檔案, 可以使用這個:
$ git add .
提交改變 (commit)
我們已經新增好了 1.py
檔案, 最後一步就是提交這次的改變, 並在 -m
自定義這次改變的資訊:
$ git commit -m "create 1.py"
# 輸出
[master (root-commit) 6bd231e] create 1.py
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 1.py
流程圖
整個上述過程可以被這張 git 官網上的流程圖直觀地表現: