全部文章索引
共 31 篇 Git 场景教程,按使用场景分类整理。可在下方搜索或筛选。
31篇教程
7大分类
7场景维度
⌘
入门与安装
7 篇
git 别名 alias 配置:用短命令提升效率
git status 打太累?想一条命令看图形历史?git alias 能把你常用的长命令缩成短词。本文给常用别名清单、配置方法,以及进阶的自定义命令别名。
2026-09-06
git clone 克隆远程仓库完整教程(https/ssh/指定分支/浅克隆)
从 GitHub、GitLab 或私有服务器克隆代码,本文讲清 HTTPS 与 SSH 区别、如何只克隆某个分支、以及加速大仓库的浅克隆与稀疏检出。
2026-09-06
git diff 查看代码差异的常用姿势
改了什么想看清楚?git diff 显示代码差异。本文讲清 diff 的工作区/暂存区/提交对比、看单个文件、分支间差异,以及怎么让 diff 更易读。
2026-09-06
git init 初始化仓库:从零创建一个 Git 项目
想给本地文件夹开启版本管理?git init 是第一步。本文讲清 git init 的用法、生成 .git 目录结构、以及 init 和 clone 的区别。
2026-09-06
git log 查看提交历史的 10 个实用姿势
git log 是查看提交历史的基础命令,但默认输出很冗长。本文整理 10 个实用姿势:单行、图形、按作者/日期/文件过滤、统计改动等,帮你高效回溯代码历史。
2026-09-06
git 首次使用必做的 .gitconfig 配置(用户名/邮箱/常用项)
第一次用 Git 最该做的就是把用户名和邮箱配好,否则无法提交。本文讲清 git config 的三种作用域、首次必配项、以及常用编辑器等增强配置。
2026-09-06
git tag 打标签与推送:标记发布版本的完整教程
想给某个提交打上 v1.0.0 的版本号?本文讲清 git tag 的创建、轻量与附注标签区别、查看、删除,以及如何把标签推送到远程仓库。
2026-09-06
✓
提交与暂存
4 篇
git add 和 git commit 的区别,以及怎么只提交部分文件
新手最容易混的两个命令:add 是「选东西放进推车」,commit 是「把推车推走」,别再把它们当成一步。本文讲清暂存区概念、只提交指定文件、以及 add -p 部分暂存。
2026-09-06
git commit --amend 修改最近一次提交(信息、漏文件、作者)
提交后发现提交信息写错、漏了文件、或想并入一个小改动?git commit --amend 能原地修改最近一次提交。本文讲清三种场景与注意风险。
2026-09-06
.gitignore 忽略文件写法大全:不再误提交 node_modules、日志等
总是不小心把 node_modules、.env、编译产物提交上去?.gitignore 告诉你如何忽略这些文件。本文讲清语法规则与常见模板,并解决"已提交又改不生效"的坑。
2026-09-06
git stash 临时保存未提交的改动(含 stash 系列全解)
改到一半要切换分支、拉取代码、或处理紧急 bug,又不想提交半成品?git stash 能把工作区和暂存区的改动"藏起来",随时再取出。本文讲透 stash 的保存、恢复与清理。
2026-09-06
⑂
分支管理
4 篇
git checkout 和 git switch 的区别:新手该用哪个
git checkout 身兼数职容易混淆,Git 2.23 推出了更清晰的 git switch 和 git restore。本文讲清 switch/restore/checkout 的分工,以及为什么新项目推荐用 switch。
2026-09-06
git commit message 规范写法(Conventional Commits)
好的提交信息让历史清晰、方便回溯与自动生成 changelog。本文讲清 Conventional Commits 规范:feat/fix/docs 等类型、作用域、正文写法,并给真实示例。
2026-09-06
git 创建、切换、合并、删除分支完整指南
分支是 Git 最强大的功能。本文用完整示例讲清 git branch、git checkout/switch、git merge、git branch -d 的协作用法,以及分支与 commit 的关系。
2026-09-06
git 分支重命名:本地和远程分支怎么改名
分支名打错了或想改名?本文讲清重命名本地分支、以及已推到远程的分支改名的完整三步,含 origin 旧分支删除与重新关联。
2026-09-06
↺
撤销与回滚
5 篇
git checkout -- 文件 恢复误改误删的内容
文件被改坏了、或误删了还没提交的文件,想恢复成最近一次提交的版本?git checkout -- 文件 和 git restore 帮你一键还原。本文讲清用法与风险。
2026-09-06
git 撤销最后一次 commit 的 3 种方法(保留/删除/丢弃改动)
忘记提交了不想提交的文件、或提交信息写错、或想彻底撤销最后一次 commit?本文用 3 个真实场景讲清 git reset、git revert、git commit --amend 的区别与用法。
2026-09-06
git reset 三种模式 --soft / mixed / hard 的区别详解
git reset 的 --soft、--mixed、--hard 到底差在哪?本文用一个真实例子讲透三种模式对"提交历史、暂存区、工作区"的影响,帮你选对最安全的那一种。
2026-09-06
git revert 撤销已推送的提交(安全不改写历史)
提交已经 push 到远程、还和同事共享了,想撤销怎么办?git revert 通过新增一个"反向提交"来抵消改动,不改写历史、安全协作。本文讲清用法与场景。
2026-09-06
git 找回误删的提交:git reflog 实战
误用了 git reset --hard、git branch -D 删了分支、或提交凭空消失了?git reflog 是你的"后悔药",能找回几乎任何丢掉的提交。本文用真实场景讲透操作步骤。
2026-09-06
⇄
合并与冲突
4 篇
git cherry-pick 挑取其他分支的某个提交
只想把某个分支的某一个提交"摘"到当前分支,而不想合并整个分支?git cherry-pick 精准复制单个提交。本文讲清用法、多提交、冲突处理与场景。
2026-09-06
git merge 冲突怎么解决?一篇讲透合并冲突的 4 个步骤
两个人改了同一文件同一行、git merge 报 conflict,怎么办?本文用真实例子带你走完「看冲突→选版本→标记解决→提交」的完整流程。
2026-09-06
git merge 和 git rebase 怎么选?一张图讲清差别
merge 保留合并记录但历史有分叉,rebase 让历史线性干净但会改写提交。本文用历史图形讲透两者差别,给你"什么场景用哪个"的清晰决策。
2026-09-06
git rebase 冲突怎么解决?遇到冲突如何中止与继续
git rebase 把提交变基时也可能冲突。本文讲清 rebase 冲突与 merge 冲突的差别、解决步骤、以及用 rebase --continue / --abort / --skip 处理。
2026-09-06
☁
远程仓库
2 篇!
报错解决
5 篇
git 提示 Your branch is ahead/behind 是什么意思,怎么处理
git status 显示 "Your branch is ahead of origin/main by 2 commits" 或 "behind by 3 commits",很多人看不懂。本文讲清 ahead/behind 含义,以及何时 push、何时 pull。
2026-09-06
fatal: Not a git repository 报错的解决
敲 git 命令报 "fatal: Not a git repository (or any of the parent directories)"?说明当前不在仓库内。本文讲清原因、两种解决思路与排查方法。
2026-09-06
git 报错 refusing to merge unrelated histories 的解决
合并或拉取时提示 "fatal: refusing to merge unrelated histories"?这是两个没有共同祖先的仓库合并导致的。本文讲清原因与 2 种解法,并说明何时该用何时慎用。
2026-09-06
git push 失败 rejected 的 6 个常见原因与解决办法
推送代码被拒「! [rejected]」「failed to push」「non-fast-forward」怎么办?本文覆盖远程领先、权限不足、分支被保护、网络等 6 大根因及对应解法。
2026-09-06
git 中文乱码怎么解决?status、log、文件名乱码处理
git status 中文文件名变成 \345\234\226 乱码、log 中文提交信息乱码、diff 中文乱码?本文给出 Git 中文环境的完整配置方案,一次解决常见乱码。
2026-09-06
没有匹配的教程,换个关键词试试。