Git 命令大全

Git 命令大全:常用、高级与维护总结 (V3 - 更完整版)

本表格是 Git 命令的完整总结,涵盖了从基础操作、高级历史管理到仓库维护的所有重要命令。


I. 基础设置与文件操作 (Basic Workflow)

命令类别 命令 作用描述 (中文)
设置与初始化 git init 在当前目录创建 Git 仓库。
git clone [url] 克隆远程仓库。
git config --global 配置全局 Git 环境(如用户名、邮箱等)。
状态与差异 git status 查看工作区和暂存区的状态。
git status -s 简洁地显示工作区状态。
git diff 查看工作区与暂存区之间的差异 (未暂存的修改)。
git diff --staged 查看暂存区与上次提交之间的差异 (已暂存的修改)。
暂存与提交 git add [file] / . 将文件或所有更改添加到暂存区。
git commit -m "message" 提交暂存区的更改到本地仓库。
文件管理 git rm [file] 从工作区和暂存区删除文件,并记录删除。
git rm --cached [file] 仅从暂存区和仓库中删除,保留工作区文件。
git mv [old] [new] 移动或重命名文件。

II. 分支管理与远程协作 (Branching & Remote)

命令类别 命令 作用描述 (中文)
分支创建与切换 git branch 列出本地分支。
git branch [name] 创建新分支。
git branch -d [name] 删除已合并的本地分支。
git switch [branch] 切换到指定分支(推荐)。
git switch -c [new] 创建并切换到新分支(推荐)。
git checkout -b [new] 创建并切换到新分支(旧用法)。
合并与中止 git merge [branch] 将指定分支合并到当前分支。
git merge --abort 中止正在进行的合并操作。
git rebase --abort 中止正在进行的变基操作。
远程操作 git remote -v 查看已配置的远程仓库。
git remote add [name] [url] 添加新的远程仓库别名。
git remote rename [old] [new] 重命名远程仓库别名。
git remote set-url [name] [new-url] 修改远程仓库的 URL。
git fetch [remote] 下载远程数据,但不合并。
git pull 拉取远程更改并自动合并。
git push 推送本地提交到远程仓库。
git push -u [remote] [branch] 设置上游跟踪分支并推送。
git push --force 强制推送(覆盖远程历史,需谨慎)。

III. 撤销、修改与高级历史操作 (Advanced History)

命令类别 命令 作用描述 (中文)
工作区/暂存区撤销 git restore [file] 撤销工作区文件的修改。
git restore --staged [file] 取消暂存文件(等同于 git reset HEAD [file])。
git commit --amend 修改上一次提交的提交信息或内容。
版本回退 git reset --soft [commit] 软回退:HEAD 移动,保留工作区和暂存区。
git reset --mixed [commit] 默认回退:HEAD 移动,取消暂存,保留工作区。
git reset --hard [commit] 强制回退:丢弃所有本地更改(危险)。
git revert [commit] 反转提交:创建新的提交来撤销指定提交的更改(安全)。
历史优化 git rebase [branch] 变基:保持提交历史线性。
git rebase -i [commit-id] 交互式变基:用于编辑、合并、重排提交历史。
git cherry-pick [commit-id] 拣选:将指定的单个提交应用到当前分支。
多工作区 (Worktree) git worktree add [path] [branch] 添加新的工作区,允许在不同分支上同时工作。
git worktree list 列出所有已配置的工作区。
git worktree remove [path] 移除指定的工作区。
临时保存 (Stash) git stash 储藏:临时保存工作区和暂存区的修改。
git stash list 查看储藏列表。
git stash pop 恢复并删除最近一次储藏。
git stash apply 恢复储藏 的修改,但保留在储藏列表中。
git stash drop 删除储藏列表中的一个储藏。
查找与调试 git log --oneline 以简洁模式(一行)查看提交历史。
git log -p 查看提交历史及其对应的文件差异。
git reflog 查看 HEAD 的所有历史移动记录。
git bisect 二分查找:自动化地查找引入 Bug 的提交。
git describe 通过最近的标签来描述最近一次提交。

IV. 维护、标签与底层命令 (Maintenance & Plumbing)

命令类别 命令 作用描述 (中文)
标签管理 git tag [name] 创建轻量标签。
git tag -a [name] -m "msg" 创建附注标签(推荐)。
git push --tags 推送所有标签到远程。
子模块 git submodule add [url] 添加子模块。
git submodule update --init --recursive 初始化并递归更新所有子模块内容。
仓库维护 git clean -df 彻底删除未跟踪的文件和目录。
git gc 垃圾回收:清理不必要的对象文件,优化仓库。
git archive [branch] 为指定分支创建一个压缩存档文件(如 .zip.tar.gz)。
底层操作 git cat-file -p [hash] 查看 Git 对象的底层内容。
git hash-object [file] 计算文件内容的哈希值。
辅助 git check-ignore 检查文件是否被 .gitignore 忽略。
git help [command] 显示指定命令的帮助手册。
git shortlog 按作者分组显示提交摘要。

提示 : Git 命令功能强大,尤其是 reset --hardpush --force,请在操作前仔细确认,以免丢失重要代码!

相关推荐
AWS官方合作商5 小时前
告别漫长等待:利用 Amazon GameLift Servers 实现分钟级快速迭代
前端·git·云计算·github·aws
红尘客栈25 小时前
git文件的上传
git
正经教主5 小时前
【Git】Git05-02:Github 基础同步命令
git·github
黎茗Dawn7 小时前
git-Windows-my-dell-笔记
开发语言·windows·git
命运之光13 小时前
【快速解决】怎么用git拉取项目到本地
git
Siren_dream13 小时前
linux安装git-lfs(无需root权限)
linux·运维·git
因为奋斗超太帅啦13 小时前
Git分布式版本控制工具学习笔记(二)——git远程仓库
笔记·git·学习
艾莉丝努力练剑13 小时前
【Git:分支管理】Git 分支管理完全指南:从创建、合并到冲突解决
linux·服务器·人工智能·git·gitee·centos·分支管理
风禾万里13 小时前
汽车电子软件系统架构ARXML 如何融入 CI/CD、Git、GitLab
git·ci/cd·gitlab