Ad 320×100
开发工具

Git 速查表

Git 常用命令速查——分支、合并、变基与工作流

git init

在当前目录初始化新的 Git 仓库

git clone <url>

克隆远程仓库

git clone --depth 1 <url>

浅克隆(仅最新提交),加快下载

git config --global user.name "Name"

为所有仓库设置用户名

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

为所有仓库设置邮箱

git config --global core.editor vim

设置提交信息的默认编辑器

git config --global init.defaultBranch main

设置新建仓库的默认分支名

git config --list

列出所有配置项

git config --global alias.co checkout

创建 Git 别名(co → checkout)

git config --global credential.helper cache

在内存中临时缓存凭据

git status

显示工作区状态(已修改、已暂存、未跟踪)

git add <file>

暂存指定文件以提交

git add .

暂存当前目录下的所有更改

git add -p

交互式暂存文件的局部内容(逐块)

git commit -m "message"

提交已暂存的更改并附带说明

git commit -am "message"

暂存所有已跟踪文件并一步提交

git commit --amend

修改最近一次提交(信息或文件)

git diff

显示未暂存的更改

git diff --staged

显示已暂存的更改(待提交)

git diff HEAD~3

将工作区与 3 个提交前对比

git push

推送提交到远程分支

git pull

拉取并合并远程更改到当前分支

git pull --rebase

拉取远程并将本地提交变基到其上方

git fetch

下载远程更改但不合并

git branch

列出所有本地分支

git branch -a

列出所有分支(本地和远程)

git branch <name>

创建新分支

git branch -d <name>

删除已合并的分支

git branch -D <name>

强制删除未合并的分支

git branch -m <old> <new>

重命名分支

git switch <branch>

切换到已有分支

git switch -c <branch>

创建并切换到新分支

git checkout <branch>

切换分支(经典语法)

git checkout -b <branch>

创建并切换到新分支(经典语法)

git merge <branch>

将分支合并到当前分支

git merge --no-ff <branch>

使用合并提交进行合并(禁用快进)

git rebase <branch>

将当前分支变基到另一分支

git rebase --abort

中止正在进行的变基

git rebase --continue

解决冲突后继续变基

git cherry-pick <commit>

将指定提交应用到当前分支

git remote -v

列出远程仓库及 URL

git remote add origin <url>

添加新的远程仓库

git remote rename origin upstream

重命名远程仓库

git remote remove <name>

删除远程仓库

git remote set-url origin <url>

更改远程仓库 URL

git push -u origin <branch>

推送分支并设置上游跟踪

git push origin --delete <branch>

删除远程分支

git fetch --all

从所有已配置的远程拉取

git fetch --prune

拉取并清除过期的远程跟踪分支

git pull origin main

从指定远程分支拉取更改

git push --force-with-lease

安全强制推送(远程有更新则失败)

git log

显示提交历史

git log --oneline

显示紧凑的单行提交历史

git log --oneline --graph --all

显示所有分支的分支图

git log -p -2

显示最近 2 次提交的差异

git log --author="Name"

按作者筛选提交

git log --since="2 weeks ago"

显示最近 2 周的提交

git log --stat

显示提交历史及文件变更统计

git show <commit>

显示指定提交的详情和差异

git blame <file>

显示文件每行最后修改者

git shortlog -sn

按作者显示提交数(已排序)

git reflog

显示 HEAD 移动历史(恢复工具)

git diff <branch1>..<branch2>

比较两个分支

git log --all --grep="fix"

在提交信息中搜索关键词

git restore <file>

丢弃文件的未暂存更改

git restore --staged <file>

取消暂存文件(保留工作区更改)

git reset HEAD~1

撤销上次提交,保留已暂存更改

git reset --soft HEAD~1

撤销上次提交,保留已暂存更改

git reset --hard HEAD~1

撤销上次提交并丢弃所有更改

git reset --hard origin/main

重置分支以匹配远程(会丢失本地更改)

git revert <commit>

创建新提交以撤销指定提交

git clean -fd

删除未跟踪的文件和目录

git clean -fdn

模拟运行——显示将被删除的内容

git rm --cached <file>

从暂存区移除文件(保留磁盘文件)

git checkout <commit> -- <file>

从指定提交恢复文件

git stash

保存未提交的更改并清空工作区

git stash push -m "description"

暂存更改并添加描述信息

git stash list

列出所有 stash 记录

git stash pop

应用最新 stash 并从列表中移除

git stash apply

应用最新 stash 但保留在列表中

git stash apply stash@{2}

按索引应用指定 stash

git stash drop stash@{0}

删除指定 stash

git stash clear

清除所有 stash 记录

git stash show -p

显示最新 stash 的差异

git stash branch <branch>

从 stash 创建分支

git tag

列出所有标签

git tag v1.0.0

创建轻量标签

git tag -a v1.0.0 -m "Release 1.0"

创建带说明的附注标签

git tag -a v1.0.0 <commit>

为指定提交创建标签

git tag -d v1.0.0

删除本地标签

git push origin v1.0.0

推送指定标签到远程

git push origin --tags

推送所有本地标签到远程

git push origin --delete v1.0.0

删除远程标签

git show v1.0.0

显示标签信息

git describe --tags

描述当前提交相对于最近标签的位置

git submodule add <url> path/

向仓库添加子模块

git submodule init

初始化子模块配置

git submodule update

拉取并检出子模块提交

git submodule update --init --recursive

递归初始化并更新所有子模块

git submodule foreach git pull

在所有子模块中拉取最新更改

git submodule status

显示所有子模块状态

git submodule deinit path/

注销子模块

git rm path/

从仓库中移除子模块

git bisect start

开始二分查找引入 bug 的提交

git bisect good <commit>

标记提交为不含 bug

git bisect bad <commit>

标记提交为含 bug

git bisect reset

结束 bisect 并返回原 HEAD

git worktree add ../feature feature-branch

为分支创建关联工作树

git worktree list

列出所有关联工作树

git archive --format=zip HEAD > repo.zip

将仓库导出为 zip 归档

git grep "pattern"

在已跟踪文件中搜索模式

git format-patch -3

为最近 3 次提交生成补丁文件

git apply patch.patch

应用补丁文件

git rev-parse HEAD

显示当前提交的完整 SHA

git gc

运行垃圾回收以优化仓库

所示命令适用于 Git 2.x 及以上版本。

Ad 320×100

Git 速查表

一份免费、可搜索的Git速查表,将最实用的命令、参数和快捷方式集中在一处。快速查阅语法、复制命令,更高效地掌握Git 版本控制——既适合新手,也是熟练用户的便捷参考。

FAQ

这份Git速查表免费吗?
免费。整份速查表均可免费浏览和复制,无需注册。
可以搜索特定命令吗?
可以。使用搜索即可即时筛选Git命令,直接跳转到你需要的语法。
Git速查表适合谁使用?
它适合所有人——从正在学习Git 版本控制的新手,到想快速回顾不常用参数和快捷方式的高级用户。