Command Hub
Git 命令专题
先进入命令聚合页,再按学习路径选择具体命令详情,避免在左侧菜单里直接平铺过长列表。
Command Hub
推荐学习顺序
先从查看状态、提交和同步开始,再进入会改写历史、恢复状态和排查问题的命令。
Command Hub
代表专题
如果你想先把命令站的核心价值看明白,优先看状态判断、历史整理和恢复入口这三类专题。
Command Reference
基础命令
先补齐仓库初始化、查看状态、提交、同步与分支切换这些日常高频命令。
git init 教程
解释 git init 如何初始化仓库、默认分支如何产生,以及它在新项目和已有目录中的常见用法。
git clone 教程
说明 git clone 如何复制仓库、默认远端 origin 的作用,以及克隆后本地分支与远端分支的基本关系。
git status 教程
讲清 git status 如何查看工作区、暂存区和分支状态,以及它为什么是日常最应该频繁使用的命令之一。
git add 教程
说明 git add 如何把工作区改动加入暂存区、如何用 patch 精细暂存,以及怎样避免把不相关改动混进同一次提交。
git commit 教程
解释 git commit 如何生成新的历史节点、怎样写出更有价值的提交信息,以及 amend 适合和不适合的边界。
git diff 教程
讲清 git diff 如何比较工作区、暂存区和提交状态,如何正确选择比较范围,以及怎样避免看错层级。
git show
查看某个提交、标签或对象的详细内容,是把历史节点和对象读清楚的高频命令。
git log 教程
说明 git log 如何查看提交历史、分支图结构、作者和范围过滤,并把它真正用到评审、同步和恢复判断中。
git rm
删除已跟踪文件并同步到暂存区,理解它有助于区分文件系统删除和 Git 记录删除。
git mv
用于重命名或移动已跟踪文件,帮助你把文件系统变化和暂存区状态一次保持一致。
git fetch 教程
解释 git fetch 如何更新远端引用、为何它比 pull 更可控,以及它在日常同步中的最佳位置。
git pull 教程
解释 git pull 是 fetch 加整合的组合动作,什么时候 pull 很方便,什么时候 fetch-first 更稳,以及 rebase / ff-only 会怎样改变结果。
git push 教程
说明 git push 如何发布本地分支、建立上游跟踪关系,以及怎样判断一次 push 是安全发布还是高风险改写。
git switch 教程
介绍 git switch 如何负责切换和创建分支,以及它相对 checkout 更清晰的职责边界。
git branch 教程
系统说明 git branch 如何查看、创建、重命名和删除分支,以及它与远端跟踪分支的关系。
git tag 教程
介绍 git tag 如何标记发布点、轻量标签和附注标签的区别,以及标签推送的基本方式。
git remote 教程
讲清 git remote 如何查看、添加、修改和删除远端仓库定义,以及 origin 在协作中的典型角色。
git-config 教程
解释如何用 git-config 查看和修改 Git 配置。
git-help 教程
解释如何用 git-help 查阅命令帮助和手册页。
git-describe 教程
解释如何用 git-describe 用最近标签描述当前提交。
git-grep 教程
解释如何用 git-grep 在仓库内容中搜索文本。
git-shortlog 教程
解释如何用 git-shortlog 按作者和主题汇总提交历史。
git-show-ref 教程
解释如何用 git-show-ref 列出仓库中的引用及其目标。
git-rev-parse 教程
解释如何用 git-rev-parse 解析修订表达式和仓库路径信息。
Command Reference
高级命令
再进入会影响历史表达、撤销策略和风险边界的命令专题。
git rebase 教程
解释 git rebase 的核心模型、推荐流程、风险边界和恢复办法。
git merge 教程
解释 git merge 的核心作用、fast-forward 与 merge commit 的区别,以及冲突处理策略。
git cherry-pick 教程
解释如何把某个提交的改动拣选到当前分支,以及 cherry-pick 的典型适用边界。
git reset 教程
解释 git reset 如何移动 HEAD、分支和暂存区,并区分 --soft、--mixed、--hard 的影响范围。
git stash 教程
解释如何用 git stash 临时保存未提交改动,并在后续恢复、查看和清理 stash 条目。
git restore 教程
说明 git restore 如何恢复工作区和暂存区中的文件状态,以及它和 reset、checkout 的边界。
git revert 教程
讲清 git revert 为什么适合撤销已共享提交,以及它和 reset 在历史表达上的关键区别。
git reflog
查看引用移动历史,是 reset、rebase、误删分支等恢复场景里最常用的自救命令之一。
git bisect
通过二分法定位引入 bug 的提交,是排查回归问题时最有价值的高级命令之一。
git blame
定位某一行代码最后由哪个提交引入或修改,适合排查行为来源和上下文。
git checkout 教程
说明 git checkout 作为旧式多用途命令的两大职责,以及它与 switch、restore 的现代分工。
git clean 教程
解释 git clean 如何删除未跟踪文件和目录,以及为什么 dry-run 和 force 标志在这里非常重要。
git-am 教程
把邮件格式补丁序列应用为真实提交,适合 patch-by-email 协作;重点在冲突处理中保持提交序列完整性。
git-apply 教程
解释如何用 git-apply 把补丁内容应用到工作区或暂存区。
git-format-patch 教程
解释如何用 git-format-patch 把提交导出成可发送的补丁文件。
git-send-email 教程
将 `format-patch` 产出的补丁序列按邮件线程发送给维护者或邮件列表,适用于内核式补丁协作流程。
git-request-pull 教程
生成“从哪个基线到哪个分支”的拉取摘要,适合邮件流或传统维护者流程中做可审阅的变更交付说明。
git-archive 教程
解释如何用 git-archive 从某个提交或树对象导出归档包。
git-bundle 教程
把 Git 历史打包成单文件用于离线传输或受限网络同步,适合“不能直接 fetch/push”的场景。
git-worktree 教程
为同一仓库创建多个并行工作目录,避免频繁 stash/switch,提高多任务协作与紧急切换效率。
git-submodule 教程
管理父仓库中的外部依赖仓库指针,重点是“子模块提交更新后要提交父仓库指针”这一协作边界。
git-sparse-checkout 教程
解释如何用 git-sparse-checkout 只检出仓库中的部分目录。
git-cat-file 教程
解释如何用 git-cat-file 直接查看 Git 对象的类型和内容。
git-ls-files 教程
解释如何用 git-ls-files 列出索引和工作区里的受跟踪路径。
git-ls-tree 教程
解释如何用 git-ls-tree 列出某个树对象中的目录和文件条目。
git-read-tree 教程
解释如何用 git-read-tree 把树对象读入索引进行底层操作。
git-update-index 教程
解释如何用 git-update-index 直接修改索引中的条目和属性。
git-update-ref 教程
解释如何用 git-update-ref 以更底层的方式更新引用。
git-symbolic-ref 教程
解释如何用 git-symbolic-ref 读取或修改符号引用如 HEAD。
git-rev-list 教程
解释如何用 git-rev-list 以脚本友好的方式枚举提交集合。
git-merge-base 教程
解释如何用 git-merge-base 找出两个历史之间的最佳共同祖先。
git-notes 教程
在不改写提交对象的前提下给提交补充审计、复盘或评审注释,适合需要保留原始历史又要追加上下文的团队。
git-range-diff 教程
比较两组“补丁序列”而不是单点 diff,适合在 rebase 或重排提交后向 reviewer 解释“这次版本改动到底变了什么”。
git-cherry 教程
解释如何用 git-cherry 判断哪些提交尚未被另一条历史吸收。
git-mergetool 教程
解释如何用 git-mergetool 调用外部工具辅助解决合并冲突。
git-fsck 教程
解释如何用 git-fsck 检查对象库和引用的完整性。
git-gc 教程
解释如何用 git-gc 执行垃圾回收和仓库整理。
git-count-objects 教程
解释如何用 git-count-objects 统计松散对象和包文件的数量。
git-verify-pack 教程
解释如何用 git-verify-pack 检查 pack 文件中的对象和偏移信息。
git-verify-tag 教程
解释如何用 git-verify-tag 验证带签名标签的真实性。
git-rerere 教程
启用并重用冲突解决方案,减少重复解决相同冲突的工作量。
git-difftool 教程
使用外部图形化工具查看差异,提升代码审查和冲突理解效率。
git-replace 教程
在不改写历史的情况下替换提交对象,用于拆分仓库或修正历史中的特定节点。
git-prune 教程
清理不可达的 Git 对象,配合 gc 和 reflog 管理仓库对象生命周期。
git-hash-object 教程
计算文件或标准输入的 Git 对象 ID(SHA-1),帮助理解 Git 的内容寻址模型。
git-interpret-trailers 教程
解析、添加或规范化提交信息中的尾部字段(trailers),如 Co-authored-by、Signed-off-by。