Git 命令速查表:你真正會用的命令
Git 有數百個命令,但日常工作只用幾十個。這就是那套實用命令 —— 按任務分組,從暫存、提交到分支、遠端和還原錯誤。角括號 <像這樣> 標記你要填入的值。
更新 2026-07-06
設定
| 命令 | 作用 |
|---|---|
| git init | 在目前資料夾開始一個新儲存庫 |
| git clone <url> | 把遠端儲存庫複製到你的機器 |
| git config --global user.name "Name" | 設定你的提交作者名 |
| git config --global user.email "you@x.com" | 設定你的提交作者信箱 |
暫存 & 提交
| 命令 | 作用 |
|---|---|
| git status | 顯示已變更、已暫存和未追蹤的檔案 |
| git add <file> | 為下次提交暫存一個檔案 |
| git add . | 暫存目前資料夾的所有變更 |
| git reset <file> | 取消暫存一個檔案(保留變更) |
| git commit -m "message" | 帶訊息提交已暫存的變更 |
| git commit -am "message" | 暫存已追蹤檔案並一步提交 |
| git commit --amend | 編輯最近一次提交 |
分支
| 命令 | 作用 |
|---|---|
| git branch | 列出本機分支 |
| git branch <name> | 建立一個新分支 |
| git checkout <name> | 切換到某個分支 |
| git switch <name> | 切換到某個分支(較新語法) |
| git checkout -b <name> | 建立並切換到新分支 |
| git branch -d <name> | 刪除已合併的分支 |
| git branch -D <name> | 強制刪除分支 |
合併 & 變基
| 命令 | 作用 |
|---|---|
| git merge <branch> | 把一個分支合併到目前分支 |
| git rebase <branch> | 把你的提交重播到另一個分支之上 |
| git rebase -i <ref> | 互動式編輯、壓縮或重排提交 |
| git cherry-pick <hash> | 把單個提交套用到目前分支 |
遠端
| 命令 | 作用 |
|---|---|
| git remote -v | 列出已設定的遠端 |
| git remote add origin <url> | 把本機儲存庫連線到遠端 |
| git fetch | 下載遠端變更但不合併 |
| git pull | 拉取並合併遠端變更 |
| git push | 把你的提交上傳到遠端 |
| git push -u origin <branch> | 推送並設定上游分支 |
還原
| 命令 | 作用 |
|---|---|
| git restore <file> | 捨棄對某檔案未提交的變更 |
| git reset --soft HEAD~1 | 還原上次提交,保留已暫存的變更 |
| git reset --hard HEAD~1 | 還原上次提交並捨棄變更 |
| git revert <hash> | 建立一個還原某提交的新提交 |
| git stash | 擱置變更以去做別的事 |
| git stash pop | 重新套用最近擱置的變更 |
查看歷史
| 命令 | 作用 |
|---|---|
| git log | 顯示提交歷史 |
| git log --oneline | 每個提交一行的精簡歷史 |
| git diff | 顯示未暫存的變更 |
| git diff --staged | 顯示已暫存的變更 |
| git show <hash> | 顯示某個提交的詳情 |
| git blame <file> | 顯示每行最後由誰變更 |