Diff Tools

delta – viewer for git and diff output

Delta is a viewer for git and diff output.

The program allows you to make extensive changes to the layout and styling of diffs, as well as allowing you to stay arbitrarily close to the default git/diff output.

This is free and open source software.

Key Features

  • Language syntax highlighting with color themes.
  • Within-line highlights based on a Levenshtein edit inference algorithm.
  • Git style strings (foreground color, background color, font attributes) are supported for >20 stylable elements.
  • Side-by-side view. By default, side-by-side view has line-numbers activated, and has syntax highlighting in both the left and right panels
  • Line numbering.
  • diff-highlight and diff-so-fancy emulation modes. diff-highlight is a perl script distributed with git that allows within-line edits to be identified and highlighted according to colors specified in git config. diff-so-fancy builds on diff-highlight, making various additional improvements to the default git diff output. Both tools provide very helpful ways of viewing diffs, and so delta provides emulation modes for both of them.
  • Stylable box/line decorations to draw attention to commit, file and hunk header sections.
  • Support for Git’s –color-moved feature.
  • Code can be copied directly from the diff (-/+ markers are removed by default).
  • n and N keybindings to move between files in large diffs, and between diffs in log -p views (–navigate).

Website: github.com/dandavison/delta
Support:
Developer: Dan Davison
License: MIT License

delta
Click for full size image

delta is written in Rust. Learn Rust with our recommended free books and free tutorials.


Related Software

Terminal-Based Diff Tools
difftasticStructural diff tool that compares files based on their syntax
diff-so-fancyAttractive diffs with diff-highlight and more
deltaViewer for git and diff output
icdiffAn improved colored diff
diffoscopeIn-depth comparison of files, archives, and directories
colordiffWrapper for diff with pretty syntax highlighting
diffsitterSemantic diff tool
objdiffLocal diffing tool for decompilation project
ydiffTool to view colored, incremental diff in a version controlled workspace
diffrWord-by-word diff highlighting utility
dyffdiff tool for YAML files
WdiffWordwise implementation of diff
dwdiffdiff program that operates at the word level
oyoStep-through diff viewer
diffymlCompares YAML documents by their structure
diff2html-cliGenerate HTML diffs
biodiffTerminal-based binary diff viewer
dirdiffCompute the differences between two directories
csvdiffFast diff tool for comparing CSV files
VBinDiffVisual binary diff
riffWrapper around diff
csv-diffDiffing CSV and JSON files
xmldiffCompare XML documents
vblTerminal-based hexadecimal viewer
PatdiffFile diff using the Patience Diff algorithm
dead-ringerBinary diff utility
sesdiffGenerates a shortest edit script
semdiffSemantic diff tool written in Rust

Read our verdict in the software roundup.

Git Tools
git-extrasSuperb collection of tools for Git
git-lfsGit extension for versioning large files
git-filter-repoQuickly rewrite git repository history
git-statsLocal git statistics including GitHub-like contributions calendars
git-bugDistributed offline-first bug tracker
git-deltaViewer for git and diff output
git-branchlessBranchless workflow for git
git-repairRepair various forms of damage to git repositories
git-toolbeltSuite of useful Git commands
git-quick-statsAccess various statistics in a git repository
git-secretBash tool which stores private data inside a git repo
git-annexManage files with git without checking the file contents into git
git-absorbSuper-charging git rebase
git-standupRecall what you did on the last working day
git-townAutomate the creation, synchronization, shipping, and cleanup
git-of-theseusAnalyze how a Git repo grows over time
git-crypt
Transparent file encryption in git
gitaManage multiple git repos
git-machete Robust tool that simplifies your git workflows
git-imergeIncremental merge and rebase for Git
git-chglogCHANGELOG generator implemented in Go
git-fuzzyInteractive git with the help of fzf
git-big-pictureVisualization tool that removes uninteresting commits
herculesGain advanced insights from Git repository history
git-sizerCompute various size metrics for a git repository
git-crecordInteractively select changes to commit or stage
git-xargsUpdate across multiple GitHub repositories
git-fameGit repository collaborators sorted by contributions
git-prompt.zshLightweight git prompt for zsh
git-flowHigh-level repository operations
mamediffManages unstaged and staged Git diffs
Git Interactive Rebase ToolTerminal-based sequence editor for interactive rebase
Forge SparksGet Git forges notifications

Read our verdict in the software roundup.


Best Free and Open Source Software Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.

This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk.

You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more.

Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form.
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted