
delta
A syntax-highlighting pager that makes git, diff, and grep output easier to read.
- Stars
- 32.6k
- Forks
- 612
- Licence
- MIT
- Language
- Rust
- Last update
- 9 days ago
- Type
- Dev tool
What it is
Delta is a terminal program that sits between git and your screen and recolors diffs, blame output, and grep results with syntax highlighting. It highlights changed words within lines and can show diffs side by side with line numbers. People use it to make reviewing code changes faster and easier to follow.
- Set delta as git's pager so every git diff and git show uses it
- Use side-by-side view with line numbers to compare changes
- Use n and N to jump between files in a large diff when navigate is enabled
- Show git blame output with syntax highlighting and commit hyperlinks
Great for
- Developers who read a lot of git diffs or git show output in the terminal
- People who want syntax-highlighted git blame output
- Developers who use rg or git grep and want colored matches
- Users who want bat's color themes applied to their diffs
Not ideal for
- People who only use a graphical git client or web-based code review, since delta works in the terminal
- Users who want to keep plain git output exactly as it is, since delta changes how diffs look by design
How to get it
- 1
Install with a package manager
You'll need: git
Set delta as git's pager
git config --global core.pager deltaUse delta for interactive diff filtering
git config --global interactive.diffFilter 'delta --color-only'Enable n and N navigation between diff sections
git config --global delta.navigate trueSet merge conflict style to zdiff3
git config --global merge.conflictStyle zdiff3 - 2
Run it
- Install the package called git-delta, which provides the delta executable.
- Run the git config commands from the README to set delta as the pager.
- Run git diff or git show in a repository to see delta's output.
- Run delta -h for the short help or delta --help for the full manual.
- 3
Get the most out of it
- Enable side-by-side = true under [delta] for two-column diffs with line numbers
- Turn on line-numbers = true to show line numbers in diffs
- Use --hyperlinks to turn commit hashes into links to your hosting provider
- Preview the built-in syntax themes with delta --show-syntax-themes --dark or --light
Downloads
Strengths
- Uses the same syntax-highlighting themes as bat
- Highlights word-level changes within lines
- Configurable through standard git config settings
Trade-offs
- Output styling is extensive, so setting it up well takes some reading of the manual
- Commit hyperlinks are only supported for GitHub, GitLab, SourceHut, and Codeberg, per the README
How it compares
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| delta (this) | 32.6k | Dev tool | beginner | 9 days ago | Developers who read a lot of git diffs or git show output in the terminal |
| diff-so-fancy | 18.1k | CLI | beginner | 18 days ago | Developers who review many diffs in the terminal |
| commitlint | 18.8k | Dev tool | intermediate | 4 days ago | Teams that already use or want to adopt the conventional commit format |
| husky | 35.4k | Dev tool | beginner | 8 months ago | JavaScript or Node.js projects that want shared pre-commit checks |
| difftastic | 26.1k | CLI | beginner | 4 days ago | Developers reviewing code changes in git where reformatting adds noise |
| oh-my-posh | 23.7k | Dev tool | intermediate | 4 days ago | Developers who want their terminal prompt to show extra context |
Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.