Git 文本差异默认采用 Myers 路径;选择 patience 时先利用双方唯一的公共行建立锚点,再处理锚点之间的差异。
附源码片段 · 检索与计算
分布式版本控制 · 提交图、索引与文本差异
Git 文本差异默认采用 Myers 路径;选择 patience 时先利用双方唯一的公共行建立锚点,再处理锚点之间的差异。
Git 把内存中的 index 条目指针保存在有序、可增长的数组中,按路径和合并 stage 二分查找位置。
Git 的拓扑历史遍历记录尚未输出的子提交数量;只有相关子提交都已处理,父提交才进入可输出集合。