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,请在操作前仔细确认,以免丢失重要代码!

相关推荐
就叫飞六吧23 分钟前
git提取当前分支指定文件历史版本
git
数字游民952724 分钟前
网站备案全流程回放(腾讯云)
人工智能·git·github·腾讯云·网站备案·waytoopc
Albert Edison1 小时前
【Git】多人协作一(同一分支下)
git·vscode·svn·github
学好statistics和DS1 小时前
Git 同步冲突
大数据·git·elasticsearch
德彪稳坐倒骑驴14 小时前
Git常用命令
git
无限进步_15 小时前
【C语言&数据结构】对称二叉树:镜像世界的递归探索
c语言·开发语言·数据结构·c++·git·算法·visual studio
qq_54702617917 小时前
Git 使用指南
git
XiaoHu020718 小时前
Linux多线程(详细全解)
linux·运维·服务器·开发语言·c++·git
*才华有限公司*19 小时前
RTSP视频流播放系统
java·git·websocket·网络协议·信息与通信
juelianhuayao20 小时前
Git错误提交后如何快速删除本次commit
git