所有工具
免費

可搜尋、可列印的 Git 參考手冊——設定、分支、合併、變基、遠端儲存庫、暫存、標籤以及還原變更。免費。

Setup & config

10
git config --global user.name "Jane Doe"
Set the name attached to your commits
git config --global user.email "jane@example.com"
Set the email attached to your commits
git config --global init.defaultBranch main
Make new repos start on a "main" branch
git config --global core.editor "code --wait"
Use VS Code as the default Git editor
git config --global pull.rebase true
Rebase instead of merge when pulling
git config --global alias.co checkout
Create a shortcut alias (git co)
git config --global --list
List all global configuration values
git config user.email
Print the email for the current repo
git config --global color.ui auto
Enable colored command-line output
git help <command>
Open the manual page for a command

Create & clone repos

9
git init
Initialize a new repo in the current folder
git init my-project
Create a new repo in a new directory
git clone https://example.com/repo.git
Clone a remote repo over HTTPS
git clone git@example.com:user/repo.git
Clone a remote repo over SSH
git clone <url> my-dir
Clone into a specific directory name
git clone --depth 1 <url>
Shallow clone with only the latest commit
git clone --branch dev <url>
Clone and check out a specific branch
git clone --recurse-submodules <url>
Clone and initialize all submodules
git remote add origin <url>
Attach a remote to an existing local repo

Staging & committing

11
git add file.txt
Stage a single file for the next commit
git add .
Stage all changes in the current directory
git add -A
Stage all changes including deletions
git add -p
Interactively stage selected hunks
git commit -m "Add login form"
Commit staged changes with a message
git commit -am "Fix typo"
Stage tracked files and commit in one step
git commit --amend
Edit the most recent commit
git commit --amend --no-edit
Add staged changes to the last commit
git rm file.txt
Remove a file and stage the deletion
git mv old.txt new.txt
Rename or move a file and stage it
git reset file.txt
Unstage a file but keep its changes

Branches

10
git branch
List all local branches
git branch -a
List local and remote-tracking branches
git switch -c feature/login
Create a new branch and switch to it
git switch main
Switch to an existing branch
git checkout -b hotfix
Classic way to create and switch branches
git branch -m old-name new-name
Rename a branch
git branch -d feature/login
Delete a merged local branch
git branch -D feature/login
Force-delete an unmerged local branch
git push origin --delete feature/login
Delete a branch on the remote
git switch -
Switch back to the previous branch

Merging & rebasing

10
git merge feature/login
Merge a branch into the current one
git merge --no-ff feature/login
Merge and always create a merge commit
git merge --squash feature/login
Combine a branch into one staged change
git merge --abort
Cancel a merge with conflicts
git rebase main
Replay current branch commits onto main
git rebase -i HEAD~3
Interactively edit the last 3 commits
git rebase --continue
Resume a rebase after resolving conflicts
git rebase --abort
Cancel an in-progress rebase
git cherry-pick <hash>
Apply a single commit onto the current branch
git mergetool
Launch a tool to resolve merge conflicts

Remotes & syncing

11
git remote -v
List configured remotes and their URLs
git remote add upstream <url>
Add a second remote named upstream
git remote set-url origin <url>
Change the URL of an existing remote
git fetch
Download remote changes without merging
git fetch --all --prune
Fetch all remotes and drop stale branches
git pull
Fetch and integrate remote changes
git pull --rebase
Pull and rebase local commits on top
git push
Upload local commits to the remote
git push -u origin main
Push and set the upstream tracking branch
git push --force-with-lease
Safely force-push without clobbering others
git push origin --tags
Push all local tags to the remote

Inspecting & comparing

10
git status
Show staged, unstaged, and untracked files
git status -s
Show status in a compact short format
git diff
Show unstaged changes against the index
git diff --staged
Show changes staged for the next commit
git diff main..feature
Compare two branches
git diff HEAD~1 HEAD
Compare the last commit with its parent
git show <hash>
Show the details and diff of one commit
git show HEAD:file.txt
Show a file as it was in a commit
git log --stat
Show commits with changed-file summaries
git shortlog -sn
Count commits grouped by author

Undoing changes

10
git restore file.txt
Discard unstaged changes in a file
git restore --staged file.txt
Unstage a file but keep its changes
git restore --source=HEAD~1 file.txt
Restore a file from an earlier commit
git checkout -- file.txt
Classic way to discard local changes
git reset --soft HEAD~1
Undo last commit, keep changes staged
git reset --mixed HEAD~1
Undo last commit, keep changes unstaged
git reset --hard HEAD~1
Undo last commit and discard changes
git revert <hash>
Create a new commit that undoes a commit
git clean -fd
Delete untracked files and directories
git clean -nd
Preview what clean would remove

Stashing

10
git stash
Save uncommitted changes and clean the tree
git stash push -m "wip"
Stash changes with a descriptive message
git stash -u
Stash including untracked files
git stash list
List all stashed change sets
git stash show -p
Show the diff of the latest stash
git stash apply
Reapply the latest stash and keep it
git stash pop
Reapply the latest stash and drop it
git stash apply stash@{2}
Reapply a specific stash by index
git stash drop stash@{0}
Delete a single stash entry
git stash clear
Delete all stash entries

Tags

9
git tag
List all tags
git tag v1.0.0
Create a lightweight tag at HEAD
git tag -a v1.0.0 -m "Release 1.0.0"
Create an annotated tag with a message
git tag -a v1.0.0 <hash>
Tag a specific past commit
git show v1.0.0
Show details for a tag
git push origin v1.0.0
Push a single tag to the remote
git push origin --tags
Push all local tags to the remote
git tag -d v1.0.0
Delete a tag locally
git push origin --delete v1.0.0
Delete a tag on the remote

Logs & history

12
git log
Show the full commit history
git log --oneline
Show a compact one-line-per-commit log
git log --oneline --graph --all
Visualize branches as an ASCII graph
git log -p
Show commit history with diffs
git log --author="Jane"
Filter history by author
git log --since="2 weeks ago"
Filter history by date range
git log --pretty=format:"%h %an %s"
Customize the log output format
git blame file.txt
Show who last changed each line
git reflog
Show the history of where HEAD has been
git bisect start
Begin a binary search for a bad commit
git bisect good <hash>
Mark a commit as known-good during bisect
git bisect bad
Mark the current commit as bad

沒有條目符合「:q」。


關於 Git 速查表

這份 Git 指令小抄依任務整理版本控制流程:設定與配置、建立與複製儲存庫、暫存與提交、分支、合併與重定基底、遠端與同步、檢視與比較、還原變更、暫存修改(stash)、標籤,以及日誌與歷史紀錄。

各章節反映了 Git 問題實際出現的方式——「這個怎麼還原?」「這個分支要怎麼移動?」「這幾個提交之間改了什麼?」——因此你需要的指令就緊鄰其變化形式,每個都附有一行說明其作用與使用時機。

此小抄免費,完全在用戶端運作。用搜尋框即時篩選每個指令,透過固定式目錄在各章節間跳轉,一鍵複製任何指令並列印本頁——光是還原變更那個章節,就值得貼在牆上。

如何使用 Git 速查表

  1. 瀏覽這十一個章節,從設定與配置,經還原變更,到日誌與歷史紀錄。
  2. 搜尋 rebase、stash 或 amend 等任務,即可即時篩選指令。
  3. 透過固定式側邊欄跳到遠端與同步等章節。
  4. 點擊指令或其複製圖示以複製,執行前記得調整分支或遠端名稱。
  5. 列印小抄以取得離線的 Git 參考資料。

常見問題

共十一個章節:設定與配置、建立與複製、暫存與提交、分支、合併與重定基底、遠端與同步、檢視與比較、還原變更、暫存修改、標籤,以及日誌與歷史紀錄。

可以。專門的還原變更章節將 reset、restore、revert 各種形式並列展示並附上說明,讓你能根據情況選擇正確的做法,而不是靠猜測。

有的。合併與重定基底章節展示了這兩種工作流程及其常見變化形式,分支與遠端章節則涵蓋周邊、用於搬移工作內容的指令。

可以。點擊指令或滑鼠停留時出現的複製圖示,即可直接複製到剪貼簿——只需換上你自己的分支、遠端或提交參照即可。

是的,完全免費——可在瀏覽器中搜尋、可列印,且不需帳號即可使用。


熱門搜尋
git cheat sheet git commands list git rebase vs merge git undo last commit git reset vs revert git stash commands git branch commands git log options
需要協助?
使用此工具時遇到問題?請告訴我們的團隊。
回報問題

將此免費工具新增到你自己的網站 — 複製並貼上下面的程式碼。