確認Git是否安裝成功

git --version

設定Git使用者名稱跟信箱

git config --global user.name "Andrew_Wu"
git config --global user.email "[email protected]"

確認輸入的資料是否正確

git config --list

獲取幫助

git help <command>

建立新的數據庫

git init

顯示當前數據庫狀態

git status

新增檔案到暫存區域

git add <filename>
git add . #將工作目錄內所有檔案建立索引

建立新提交

git commit
git commit -m "提交訊息" #-m means Message

顯示歷史日誌

git log #顯示歷史日誌的詳細資訊
git log --all --graph --decorate #以DAG方式顯示歷史日誌

查詢差異

git diff <filename> #顯示與上次提交時的差異
git diff <revision> <filename> #顯示某檔案與上次提交時的差異

分支

git checkout <revision> #更新HEAD與當前分支
git branch #顯示分支
git branch <name> #建立分支
git checkout -b <name> #建立分支並切換至該分支 同 git branch <name> ; git checkout <name>

合併

git merge <revision> #合併至當前分支
git mergetool #使用神奇工具處理合併衝突
git rebase #合併版本
git rebase -i HEAD~3 #修改歷史commit紀錄

遠端

git remote #列出遠端
git remote add <name> <url> #新增遠端
git push <remote> <local branch>:<remote branch> #將物件推送到遠端,並更新遠端參考
git branch --set-upstream-to=<remote>/<remote branch> #建立本地分支與遠端分支的關聯
git fetch #從遠端擷取物件/參考
git pull #更新本地端和遠端程式碼同步,同git fetch; git merge
git clone #從遠端下載數據庫

回滾

git commit --amend #編輯提交的內容或資訊
git reset HEAD <file> #取消暫存檔案
git checkout -- <file> #回滾更改

進階

git clown --depth=1 #下載數據庫,但不下載歷史紀錄
git add -p #互動暫存
git blame #檢視最後修改某列的使用者
git stash #暫時移除工作目錄下的變更
git bisect #透過二分搜尋來搜尋歷史紀錄
.gitignore #指定忽視且不會再追蹤的檔案

參考資料

版本控制

Git 與 Github 版本控制基本指令與操作入門教學

Git教學 初心者懶人包 Git 入門