diffnav
A terminal pager for Git diffs that adds a GitHub-style file tree beside the changes.
These buttons open the developer's own site, repository or store listing in a new tab. wares.gg does not host downloads.
1 more ways to get diffnav
Package managers
- Homebrew
brew install diffnav
About diffnav
diffnav is a pager for git diff output built on top of delta. It adds a file tree next to the diff, similar to the changed-files panel on GitHub, so you can jump between files in a large change instead of scrolling through one long stream.
It is written in Go and runs in the terminal. It suits developers who review diffs on the command line and want the output to be easier to move around.
Strengths
- File tree for moving between changed files
- Builds on delta's diff rendering
- Works as a pager for ordinary git diff output
Limitations
- Terminal only
- Relies on delta for rendering
Details
- Pricing
- FreeFree to download from GitHub.
- License
- Proprietary
- Developer
- dlvhdr
- Platforms
- Command line
- How it runs
- Downloadable app
- Account
- Not required
- Works offline
- Yes
- Best suited for
- Reviewing large Git diffs in the terminal
- Categories
- CLI tools, Git clients
- Last verified
- Added
- Provenance
- Facts checked against the developer's own pages and store listings, 1 sources on file.
Alternatives to diffnav
Compare allSoftware that can replace diffnav for an important use case, and what changes if you switch.
Diffview.nvim
A Neovim plugin for cycling through diffs of all modified files for any Git revision.
Diffview.nvim moves diff review into Neovim, showing all changed files for a revision in one tab page and adding file history browsing, but it needs Neovim.
Kaleidoscope
A Mac file comparison and merge app for text, images and folders that integrates with Git.
Kaleidoscope is a paid Mac app that replaces terminal diff paging with graphical comparison of text, images and folders, plus three-way merge and file history.
Similar software
Related functionality, not necessarily a direct replacement.
tig
Browse Git history and stage changes in a terminal interface.
lazygit
A terminal interface for Git that makes staging chunks, interactive rebase and stashing things you actually do.
GitUI
A terminal interface for git that is fast on huge repositories and controlled entirely from the keyboard.
Git
A free and open-source distributed version control system for projects of any size.
Gitu
A terminal user interface for Git, written in Rust and inspired by Emacs Magit.
git-graph
A command-line tool that draws Git history graphs arranged according to your branching model.