KNOWLEDGE NOTES阅读地图
7个主要章节
4张图片与图示
4组对照与手算表

先看案例与关系图,再把方法应用到自己的材料和记录。

章节速览7 节 · 展开选择

一道题如果放在“revert 练习”这一节,方法已经由标题给出。真正遇到问题时,情况往往不同:是想看内容差异,用新提交修订已共享修改,还是找回本机曾经指向的提交?知道每个术语的定义,还没有回答该选哪一种。

间隔复习讨论怎样提取、何时再练。本文再增加一个选择:同一次练习里,不同类型的题怎样排列,才能让方法选择本身也成为需要回答的问题。下面的 Git 卡片与时间表都是原创教学设计,没有收集学习者数据,也没有测量学习收益。

先分清安排

题目混排、时间间隔与闭卷回答各有含义。

再辨别任务

说明条件,选择方法,解释为什么适用。

最后核对记录

区分选错方法与执行出错,再换情境检查。

分块依次排列A1A2A3、B1B2B3、C1C2C3;交错排列A1B1C1B2C2A2C3A3B3。两行都包含相同九张卡片,每类三张,按每张两分钟预留十八分钟;颜色和类别标签只用于讲解安排
题目不变,改变的是相邻关系。 原创概念示意,卡片等宽表示相同预留时长;不是学习成绩或实验结果。A、B、C 是备课标签,实际提问时应盖住。查看原图

分块、交错、间隔与随机,分别改变什么

分块把同一类型的练习集中在一起,例如先做完三个 A,再做三个 B、三个 C。交错把不同类型穿插在同一序列中,使学习者较常重新判断当前面对什么问题。交错不要求严格的 ABC 循环,也不要求每一对相邻题都属于不同类型。

间隔关注同一内容或技能的两次学习之间隔了多久;交错关注期间穿插了哪些类型。混排往往也会改变同类题的间隔,所以仅比较两份普通题单,未必能把两个因素的作用分开。

安排 主要改变 一个例子 不能由此直接推出
分块练习 同类题连续出现 AAA、BBB、CCC 连做顺畅就能独立选方法
交错练习 不同类型的相邻关系 ABC、BCA、CAB 这种排列对所有任务都更好
间隔安排 两次学习的时间距离 今天练 A,几天后再练 A 一定在同一次练习中混了题型
随机排列 用随机过程决定次序 一次洗牌恰好得到 AABCB BACC 保证没有同类相邻或每类题数相等
提取练习 作答时是否先盖住答案 先说明方法与理由,再核对 已经跨天安排或已经交错

上表随机例子去掉空格后是 AABCBBACC,仍有 AA、BB、CC 相邻。只有先固定题库为每类三题,再做不放回洗牌,题数才会保持;如果每次独立抽一种题型,连每类三题也无法保证。随机是一种排题办法,交错描述的是安排特征,两者不能互相替代。

原始研究为什么要把间隔单独控制

Taylor 与 Rohrer(2010)比较儿童练习四类数学题的分块与交错安排,并固定同类题的间隔。交错组练习当时的表现较差,但次日测试较好;错误分析提示,差异涉及把题目与适当解法配对。USF 原始论文摘要与出版社发表信息可核对任务与结论,DOI 为 10.1002/acp.1598。

这说明讨论交错时,应检查方法选择与时间间隔,而不能只说“做题更费劲”。这是一项特定数学任务的结果,不能换算成本站 Git 练习的预期收益;本文也没有复现其材料、程序或测试。

Carvalho 与 Goldstone(2014)进一步用人工视觉类别检验边界。在其第一项实验中,类内与类间都高度相似的材料更有利于交错,类内与类间都低相似的材料则更有利于分块。原文的类别切换操作是两种不同概率,并非纯粹的 AAA 或 ABC 序列;共同特征与区分类别所需的线索会影响安排的结果。见作者实验室托管原论文与 DOI 10.3758/s13421-013-0371-0。

因此,先集中比较一类例子、寻找共同结构,也有自己的位置。本文建议先问“当前困难是还没看懂一种方法,还是看懂之后经常选错”,再设计练习;这是结合任务作出的教学建议,不是从上述实验得到的通用最优规则。类别相似度也不能凭文章标题或主观熟悉感直接量化。

把方法标题改成需要辨别的情境

下面以已经读过的三组 Git 内容为前提。A 对应差异审查,B 对应 revert,C 对应 reflog。每组各写三张变式卡;目标只是在给定条件下选择检查方向并解释理由,没有要求执行仓库操作。

备课编号给学习者的情境核对时检查的要点
A1同一文件暂存后又编辑,想知道尚未暂存的部分是什么。差异审查;比较工作区与暂存区。
A2提交前想看下一次快照相对 HEAD 准备带走什么。差异审查;比较暂存区与 HEAD。
A3两个已知提交都还在,想比较某文件在两个快照里的内容。差异审查;明确两端提交与文件范围。
B1已共享提交 B 打开了错误功能,后续 C 只改独立说明;希望追加修订撤销 B 的修改。revert;在明确独立修改且成功应用的前提下,保留 C 的说明。
B2已知普通单父提交写错了一段文档,希望用新提交逆向修订并保留既有历史。revert;先确认目标提交与逆向补丁的适用性。
B3一次普通撤销已成功产生新提交,想解释原错误提交是否仍在祖先中。revert 的历史模型;逆向修改不等于移除原提交。
C1本机脱离分支时提交过,切回 main 后不在 main 的祖先里,想寻找曾经的位置。先查本地 HEAD 引用日志,再核对完整对象身份;不保证记录仍存在。
C2本机一个仍存在的分支刚改变了指向,想查这个分支以前指到哪里。先查该分支的本地引用日志;区别于只沿当前父关系向前走。
C3本地位置记录里同一对象出现多次,想判断这是否意味着产生了多个新提交。reflog 记录引用更新;同一提交可多次出现,条目数不是新增提交数。

这张表是备课与事后核对用的完整清单。练习时只展示第二列,并打散编号,盖住类别、答案与来源标题。如果题头直接写“请用 reflog 找回”,就主要在练执行或解释,没有独立检查能否先选对工具。

每题先写三句话:我需要得到什么信息;题目给出了哪些关键条件;为什么这个方向适用。方法名称可以随后写。A2 的核心是比较端点,B1 的核心是追加逆向修订,C1 的核心是本地引用过去的位置;这几件事也可能出现在同一真实工作流中。表中的类别只是当前小任务的核对约定,不表示三个工具在实际任务里互斥。

自检:C1 先用 reflog 找线索,是否就不再需要看 diff?

仍可能需要。找到候选位置后,要核对完整提交身份、内容与父关系;diff 可以帮助检查内容。这里先辨别的是“缺少哪一种信息”,不是从此只允许用一个命令。reflog 的本地记录也不保证一直保留,找不到条目不能证明提交从未存在。

相同九张卡片,预留相同二十六分钟

为了看清顺序究竟改了什么,先固定 A1 至 C3 这九张卡、每张两分钟预留,以及相同的准备和核对时间。分块顺序为 A1、A2、A3、B1、B2、B3、C1、C2、C3;本文交错示例为 A1、B1、C1、B2、C2、A2、C3、A3、B3。

阶段示例时段分块安排交错安排预留
准备2026-10-28 19:30—19:34确认已读三组材料,盖住答案相同4 分钟
作答2026-10-28 19:34—19:52A1 A2 A3 B1 B2 B3 C1 C2 C3A1 B1 C1 B2 C2 A2 C3 A3 B39 × 2 = 18 分钟
核对2026-10-28 19:52—19:56按预先写好的要点检查并记错因相同4 分钟

两份安排都是每类三题、九题十八分钟,总预算 4 + 9 × 2 + 4 = 26 分钟。分块序列有两次类别切换,交错示例有八次。相同两分钟只是排程预算,题目的实际耗时不会自动相等;同类题之间的距离也发生了变化。因此,这份对照只能检查安排与预算,不能据此把个人表现差异归因于交错的独立作用。

两分钟用完仍没写清,就保留未完成回答并标注实际用时,核对阶段再回到来源。额外补读单独记账;不要偷偷延长一份安排,再声称两边时间相同。准备阶段若发现某种方法完全没读懂,应先补解释与例子,随后重新约一次练习。

图中的非循环顺序也只是一个示例,不是推荐的固定口诀。换一轮应调整题面与顺序,避免通过上一题的类别推断下一题;拿同一人先做分块再做完全相同的交错题单,还会受到重复作答、先后次序与额外练习的影响,不能当作严格效果比较。

把选错方法和解释出错分开记录

只写“九题对了几题”不容易指导下一次练习。有人选对 diff,却把比较端点写反;也有人熟悉 revert 的操作,但题目只是想查看变化,却一开始就选了修改历史内容的方向。前者偏向方法内的理解,后者先要检查任务辨别。

无类别题面先要求说清目标与条件,再选择方法和给出解释;核对时分辨方法选错、方法对但解释错,以及当前题完整,分别回到对照条件、方法内例子或下一次新情境
保留选择理由,才能知道下一次练什么。 原创概念示意;箭头表示本文的记录流程,没有概率、测得成绩或保证进步的含义。查看原图
原回答暴露的问题 核对时保留什么 下一步可安排什么
从“看差异”误选成“撤销修改” 原来的目标解释与选择理由 并排比较两个相近情境,圈出真正改变目标的条件
方法选对,但比较端点或祖先关系写错 错误关系与来源位置 回到该方法的一组例子,先补共同结构
只写名称,说不清理由 原回答与提示何时介入 补问为什么,另找时间无提示再答
当前题的目标、条件与理由完整 当前题面、实际日期和用时 换表述或新条件,再检查能否辨别

这里的记录栏是教学约定,不是心理测量量表。选对名称但理由错误,不应自动算作完整掌握;题面含糊、同时包含多个目标时,也应允许“先澄清问题”,不能为了凑三类而强迫唯一答案。

延迟与新情境,还要另行安排

可以暂定在 2026-10-30 用三道新题再检查,每题仍预留两分钟,共六分钟。这个日期距示例练习两天,六分钟不计入前面的二十六分钟,也没有研究证明它是 Git 知识的最优间隔。实际是否完成、是否看了提示、补读用了多久,应如实记录。

新题应保留需要辨别的结构,同时改变表面说法。比如把“同一文件暂存后又编辑”换成“界面显示两份不同的差异,应先说明各自比较哪两个位置”;把“找刚才的提交”补上“事情发生在另一台机器”,则应说出本地引用日志未必有那里的记录。新情境检查也可能暴露题面本身缺少条件,不能只按熟悉的关键词套名称。

自检:九题数量相同、时间预算相同,就能证明交错更有效吗?

不能。这只能说明题库与预留预算一致。两种顺序改变了同类题间隔;实际用时、先后次序、已有知识、题面线索与是否看提示等也可能不同。本文没有学习者数据,更没有控制这些因素的效果实验。要判断是否达到自己的目标,应另外用相应延迟和新任务核对表现,不能从八次切换推算收益。

给知识卡片补上一句“为什么此时用它”

从已经理解的两个相近任务开始,盖住方法标题,先解释目标、条件和选择理由。若还看不懂方法内部的共同结构,就回到一组例子;若定义会背但反复选错,再增加有依据的对照与穿插。需要回忆时,保留提取练习的原回答与核对记录;需要安排下一次时,把时间间隔单独记下来。

用知识地图连接不同方法,用引用溯源检查答案来路。交错不是把不相关的文章随意塞进一天,也不是追求最多切换次数;它为“看见条件后如何选方法”留出一个可以作答、可以核对的位置。本文内部核验见 tests/verify-interleaving-notes-article.cjs,只检查题库、排列、预算与图文一致性,不模拟人类记忆或测量学习效果。