跳转到内容

Modern Git 进阶全攻略

入门

本章适合已经会用 git addgit commit,但还没形成稳定协作规范的大学生。读完这一章,你应该能看懂团队为什么坚持 main 保护分支、为什么要统一提交信息,以及 mergerebase 分别适合什么场景。

  • 建立稳定的日常提交习惯
  • 理解分支策略背后的协作原因
  • 学会最小可用的提交信息规范
  • 掌握冲突前的预防与冲突后的恢复顺序
  • 会用 git addgit commitgit push
  • 有一个可以练习的本地仓库(没有的话,第一章会带你初始化一个)
章节 内容
1. 工作区、暂存区与提交历史 Git 核心数据结构与日常提交流程
2. 分支策略与命名 main 保护分支、feature/fix 分支与合并约定
3. 提交信息规范 最小可用模板 <type>(<scope>): <subject>
4. merge 与 rebase 的选用 两种合并方式的适用场景与协作信任
5. 问题排查与现场保留 四个排查命令与 stash 保存现场
6. 撤销与恢复 reset、revert 与 cherry-pick 的适用边界
7. 标签与提交卫生 tag 里程碑与 .gitignore
8. 把规范用起来 学生项目完整工作流与进阶路线
  • 如果你目前只会最基础的 Git 命令,建议按「理解 HEADreforigin → 学会看分支图 → 练习 cherry-pickrevert → 在真实项目坚持两周」的顺序补强
  • 每章末尾都有 3 道小测验,答错时解析会说明原因

看你的提交是否已经推送到远端。本地只有你一个人时,用 rebase 把提交整理成一条线性历史;提交已推送、且其他人可能基于该分支继续工作时,改用 merge 保留完整历史。拿不准时选 merge,协作信任比历史美观更重要。详见 merge 与 rebase 的选用

为什么 main 分支不能直接提交?

Section titled “为什么 main 分支不能直接提交?”

main 是团队协作的稳定基线,所有人都直接在上面提交,「哪版是可运行版本」会变得不可控。新功能、修复应分别开 feature/fix/ 分支,每个分支只做一类变更,便于评审和回滚;合并前先运行 git status 确认没有未提交的改动。详见 分支策略与命名

提交信息写到什么程度才算合格?

Section titled “提交信息写到什么程度才算合格?”

套用最小可用模板 <type>(<scope>): <subject>,说明意图而不是复述 diff。feat(quiz): 新增错题回顾功能 说明「做了什么」,update file 则等于没说。统一规范后,扫一眼 git log 就能还原项目演进。详见 提交信息规范

已经推送到远端的提交还能 rebase 吗?

Section titled “已经推送到远端的提交还能 rebase 吗?”

不建议。rebase 会改写提交记录,如果队友已经基于该分支继续开发,强制推送会打乱他们的本地分支。共享分支合回主分支时用 merge 更安全,它不改写历史。详见 merge 与 rebase 的选用

课程入门小测
x
1 / 3

学习 Git 最应该先建立的习惯是?

相关课程

  • Linux 基础

    掌握高频终端操作与权限排查,告别「不敢敲命令」。

  • 工程化实践

    把课程作业升级成可运行、可维护、可协作的工程交付。