]> git.ipfire.org Git - thirdparty/git.git/commit
blame: make diff algorithm configurable
authorAntonin Delpeuch <antonin@delpeuch.eu>
Mon, 17 Nov 2025 08:04:32 +0000 (08:04 +0000)
committerJunio C Hamano <gitster@pobox.com>
Mon, 17 Nov 2025 17:31:59 +0000 (09:31 -0800)
commitffffb987fcd3b3d6b88aceed87000ef4a5b6114e
tree62f688bdffc9d7749755cce9aa785705e2a7c838
parent881793c4f71c84e70af256c5721475c7c088b3f7
blame: make diff algorithm configurable

The diff algorithm used in 'git-blame(1)' is set to 'myers',
without the possibility to change it aside from the `--minimal` option.

There has been long-standing interest in changing the default diff
algorithm to "histogram", and Git 3.0 was floated as a possible occasion
for taking some steps towards that:

https://lore.kernel.org/git/xmqqed873vgn.fsf@gitster.g/

As a preparation for this move, it is worth making sure that the diff
algorithm is configurable where useful.

Make it configurable in the `git-blame(1)` command by introducing the
`--diff-algorithm` option and make honor the `diff.algorithm` config
variable. Keep Myers diff as the default.

Signed-off-by: Antonin Delpeuch <antonin@delpeuch.eu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/diff-algorithm-option.adoc [new file with mode: 0644]
Documentation/diff-options.adoc
Documentation/git-blame.adoc
builtin/blame.c
t/meson.build
t/t8015-blame-diff-algorithm.sh [new file with mode: 0755]