动态图把抽象的提交历史变成可观察对象
每输入一条 Git 命令,页面上的分支、HEAD 和提交节点都会变化。初学者可以看到新提交落在哪里、merge 怎样生成历史、rebase 为什么改变提交位置,而不是只从终端文字猜测仓库发生了什么。
我建议从主线第一关开始,不要直接跳到高级 rebase。每过一关,用自己的话说明 HEAD、当前分支和目标提交分别在哪里;如果只能照抄答案,回到 sandbox 自己构造一个更小的例子。
练习时把每条命令与意图对应起来
Git 的困难不在命令数量,而在同一目标可能有多种历史结果。先说清想保留什么,再输入命令。
- branch 用于建立新的可移动开发指针;
- merge 强调保留两条历史的合并关系;
- rebase 用于重放提交并整理线性历史;
- revert 适合用新提交撤销已经共享的更改。
浏览器模拟器不会覆盖所有真实仓库风险
关卡专注提交图,不会完整呈现未提交文件、冲突内容、钩子、大文件和远程权限。学会概念后,应在临时本地仓库重复同样操作,练习 git status、diff、reflog 和冲突解决。
特别是 rebase、reset 和强制推送,在已共享分支上可能改写他人历史。模拟器里可以随意重置,团队仓库则应先确认分支规则并备份。理解可恢复路径比记住一条“万能命令”重要。
适合作为图形化起点而不是唯一教材
网站提供简体中文与多语言界面,适合课堂、自学和面试前复习。完成主线与远程关卡后,结合官方 Git 文档和一个真实小项目,才能把图形理解转成日常习惯。
遇到复杂历史时可以回到 sandbox 构造简化图,再决定真实仓库操作。这个过程比在生产仓库不断试命令安全。学习目标不是追求关卡全绿,而是看到提交图就能解释每个指针为什么在那里。
