Reference 2026-04-18
Diff算法解释: Myers, Patience, Histogram
git、IDE和审查工具如何计算您每天看到的差异。
每个代码审查和合并都依赖diff算法。
Myers Diff
git、vim等默认。O((N+M)D)时间找最短编辑脚本。
Patience Diff
git diff --diff-algorithm=patience
锚定在两个文件中各出现一次的唯一行。函数移动看起来更整洁。
Histogram Diff
patience的改进。
git config --global diff.algorithm histogram
单词/字符diff
git diff --word-diff
结构化数据
- jd (JSON)
- difft (AST 基础)