difftastic
Hacker ApprovedThe most recommended of 13 diff tools
Diffs code by syntax tree rather than lines, so formatting noise and indentation changes drop out. Caveat: it only diffs code, not all diffs.
Diffs code by syntax tree rather than lines, so formatting noise and indentation changes drop out. Caveat: it only diffs code, not all diffs.
24 people gave an opinion
- recommend it
- 23
- criticize it
- 1
- approval share
- 96%
Recommended in 10 of 13 months
- November 2025: recommended
- December 2025: not recommended
- January 2026: recommended
- February 2026: recommended
- March 2026: recommended
- April 2026: recommended
- May 2026: recommended
- June 2026: recommended
- July 2026: recommended
- August 2026: not recommended
- September 2026: not recommended
- October 2026: recommended
- November 2026: recommended (month in progress)
Why it carries the badge
- 23 people recommend itNeeds 10 or more, met.
- 23 recommenders for every criticNeeds 2 to 1 or better, met.
- Recommended in 10 of 13 monthsNeeds 4 or more, met.
The same three rules apply to every product, and the badge can’t be bought. How the badge works
What people say about it
The reasons people give, with the number of comments that give each one. Open a reason to read what they said.
Why people recommend it
Each mark is one comment
Syntax-aware diffs from parsed code trees
“modern tools like difftastic used tree-sitter to bring a lot of language-aware diffing to the masses”
Comment from 18 Jun 2026 in “Epic Games announces Lore version control system” “difftastic is great as long as you are working in a language where it understands the language tree”
Comment from 28 Mar 2026 in “Improved Git Diffs with Delta, Fzf and a Little Shell Scripting” “it's using tree-sitter to not bother reporting changes that have no effect.”
Comment from 28 Mar 2026 in “Improved Git Diffs with Delta, Fzf and a Little Shell Scripting” - Comment from 16 Feb 2026 in “Vim-pencil: Rethinking Vim as a tool for writing”
- Comment from 14 Jul 2026 in “The Git history command deserves more attention”
Ignores formatting and indentation noise
“Takes a completely different approach - parses syntax trees instead of lines, so indentation changes and bracket shuffles don't show up as noise.”
Comment from 26 Feb 2026 in “Show HN: Deff – side-by-side Git diff review in your terminal” “difftastic and similar tools help a lot with formatting noise”
Comment from 14 Jan 2026 in “Are diffs still useful for AI-assisted code changes?” “so formatting slop doesn't trigger false diff lines”
Comment from 14 Jan 2026 in “Are diffs still useful for AI-assisted code changes?” - Comment from 29 Oct 2026 in “Reviewing agent output arriving faster than you can inspect it”
Works with git and jj
“you can change the git diff engine to something like difft, which makes it much more bearable”
Comment from 26 May 2026 in “I Bypassed Adobe and Microsoft to Build a Git-Tracked Book Production Pipeline” “Integration with difftastic for semantic diffs.”
Comment from 11 Nov 2025 in “The lazy Git UI you didn't know you need” “SemanticDiff, difftastic, Delta should work.”
Comment from 14 Jun 2026 in “Weave: Merging based on language structure and not lines” - Comment from 17 Jun 2026 in “Epic Games announces Lore version control system”
Preferred over other diff tools
“Came to say this as well. Started with delta, then found difftastic.”
Comment from 28 Mar 2026 in “Improved Git Diffs with Delta, Fzf and a Little Shell Scripting” “What you want is difftastic.”
Comment from 26 Feb 2026 in “Show HN: Deff – side-by-side Git diff review in your terminal” “difftastic is a better diff.”
Comment from 9 Mar 2026 in “Sem – Semantic version control. Entity-level diffs on top of Git”
What people warn about
Each mark is one comment
Only diffs code, not all diffs
“Difftastic only diffs code, which is only 2/3 of all diffs.”
Comment from 1 Nov 2026 in “Show HN: OmniDiff – Opensource, super fast, content aware Git difftool, in Rust” JSON output lacks surrounding context
“The blocker in #535 is that difftastic's JSON doesn't include surrounding context.”
Comment from 28 Mar 2026 in “Improved Git Diffs with Delta, Fzf and a Little Shell Scripting”
Other diff tools people recommend
The four most recommended other diff tools, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.
| Product | Recommend | Criticize | Approval | Months | Owned | Badge |
|---|---|---|---|---|---|---|
| difftasticThis page | 23 | 1 | 96% | 10 | — | Approved |
| Weave merge tool | 20 | 11 | 65% | 6 | — | — |
| Mergiraf | 19 | 4 | 83% | 5 | 6 mo3 owners | Approved |
| sem | 19 | 7 | 73% | 5 | — | Approved |
| Meld | 12 | 2 | 86% | 5 | — | Approved |
What people said
24 of the 26 comments that mention it, newest first. Each links to the original comment.
“Difftastic only diffs code, which is only 2/3 of all diffs.”
“difftastic integration helps to reduce some noise”
“Diffs based off tree sitter”
“modern tools like difftastic used tree-sitter to bring a lot of language-aware diffing to the masses”
“jj + difftastic has satisfied me”
“SemanticDiff, difftastic, Delta should work.”
“you can change the git diff engine to something like difft, which makes it much more bearable”
“Difftastic can even diff plaintext by treating it as Elvish”
“You can do so with current git”
“Be careful with difftastic, because it has at least one severe bug involving python that has been present for a long time”
“it's using tree-sitter to not bother reporting changes that have no effect.”
“Came to say this as well. Started with delta, then found difftastic.”
“The blocker in #535 is that difftastic's JSON doesn't include surrounding context.”
“difftastic is great as long as you are working in a language where it understands the language tree”
“difftastic is a better diff.”
“does a great job at narrowing down diffs to the actual meaningful parts”
“What you want is difftastic.”
“Takes a completely different approach - parses syntax trees instead of lines, so indentation changes and bracket shuffles don't show up as noise.”
“which can handle diff's on a syntactic level. Works great.”
“Structural diff tools like difftastic is a good middle ground and still underexplored IMO.”
“difftastic and similar tools help a lot with formatting noise”
“so formatting slop doesn't trigger false diff lines”
“I love using difftastic for my diffing tool to get context aware diffs”
“Integration with difftastic for semantic diffs.”
Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.