用途:帮助开发者从日常 Git 操作到灾难恢复,系统掌握分支策略、合并与变基取舍、冲突解决、monorepo 模式及多数人少用的进阶操作。
主要能力:
- 分支策略选择:按团队规模、发布节奏、CI 成熟度、是否多版本库、是否受监管行业,在 trunk-based、GitHub Flow、git-flow 之间给出决策逻辑与迁移步骤。
- 合并与变基:区分共享分支用 merge、个人分支用 rebase,指出“变基共享分支”“每日合并提交汤”等反模式。
- 冲突解决:提供 git log --merge、git diff --name-only --diff-filter=U、git diff :2:file :3:file 等排查命令,建议用 mergetool 或 rerere,反对盲目 --ours/--theirs。
- 进阶操作:cherry-pick(含范围与 --no-commit)、git bisect(含 git bisect run npm test 自动定位)、reflog 恢复丢失提交/分支/stash、交互式 rebase 与 autosquash。
- monorepo:sparse-checkout、subtree、submodules 对比与命令。
- 质量门禁:pre-commit、commit-msg、pre-push 钩子示例,反对习惯性 --no-verify。
- 强制推送安全:用 git push --force-with-lease 替代 --force,可配置别名 pushf。
使用方式:按需查阅对应章节;分支策略问题按资料给出的硬约束、CI 门槛、默认规则依次判断。
适用场景:新项目选型、复杂冲突、历史清理、跨分支热修复、monorepo 子集检出、误操作恢复。
限制:不覆盖 GitHub Actions/CI 流水线、PR 评审清单、GitHub API 与仓库管理、Git LFS 配置(仅提及)。资料未提供收费、价格、平台支持等信息。