DiffView
Side-by-Side Git, SVN and Bazaar Diff Viewer for Sublime Text 3
Details
Installs
- Total 32K
- Win 14K
- Mac 12K
- Linux 7K
| Oct 27 | Oct 26 | Oct 25 | Oct 24 | Oct 23 | Oct 22 | Oct 21 | Oct 20 | Oct 19 | Oct 18 | Oct 17 | Oct 16 | Oct 15 | Oct 14 | Oct 13 | Oct 12 | Oct 11 | Oct 10 | Oct 9 | Oct 8 | Oct 7 | Oct 6 | Oct 5 | Oct 4 | Oct 3 | Oct 2 | Oct 1 | Sep 30 | Sep 29 | Sep 28 | Sep 27 | Sep 26 | Sep 25 | Sep 24 | Sep 23 | Sep 22 | Sep 21 | Sep 20 | Sep 19 | Sep 18 | Sep 17 | Sep 16 | Sep 15 | Sep 14 | Sep 13 | Sep 12 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Windows | 0 | 1 | 2 | 0 | 2 | 3 | 2 | 2 | 0 | 0 | 5 | 5 | 0 | 4 | 1 | 1 | 1 | 3 | 4 | 2 | 0 | 0 | 0 | 0 | 2 | 1 | 1 | 3 | 4 | 0 | 0 | 4 | 3 | 6 | 3 | 2 | 1 | 0 | 2 | 1 | 5 | 1 | 2 | 0 | 2 | 4 |
| Mac | 0 | 1 | 0 | 0 | 1 | 4 | 3 | 2 | 1 | 0 | 2 | 2 | 1 | 2 | 1 | 1 | 1 | 0 | 1 | 3 | 4 | 1 | 0 | 1 | 1 | 2 | 3 | 1 | 2 | 0 | 1 | 1 | 2 | 2 | 3 | 2 | 0 | 5 | 0 | 0 | 0 | 2 | 1 | 0 | 1 | 0 |
| Linux | 0 | 0 | 1 | 1 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 2 | 0 | 1 | 0 | 2 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 6 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Readme
- Source
- raw.githubusercontent.com
DiffView for Sublime Text 3
Git, SVN and Bazaar Diff Viewer for Sublime Text 3
Features
- Side-by-side view with differences highlighted
- Quick navigation from one change to the next, or search for diffs in a specific file
- Auto-detects the repository to use from the current active file
- Flexible diffs for Git, SVN and Bazaar (see below for the full set of options)
- The most common diff (uncommitted changes) is the quickest to use
Screenshots
With 'Persistent List' view style (default)

With 'Quick Panel' view style

Installation
- Install the Sublime Text Package Control plugin if you don't have it already
- Open the command palette and start typing
Package Control: Install Package - Enter
DiffView
Usage
- See options under “DiffView” in the Command Palette, and also the following keyboard shortcuts
Alt + Shift + Dto run a diff- Enter the diff to run, and hit enter
- See below for supported diff options
- This lists all the changes, and shows you a preview as you move down the list
- You can search for a particular file in the list of changes, which will filter the results
- Hit
Enterto jump to the currently selected change - hit
Escto cancel the DiffView, and return to where you were
- Enter the diff to run, and hit enter
Alt + Dto review the last diff- This will show the list of changes from the last diff, starting from the last change you previewed
Supported Diff Options
Git
- Default (when there's no input): comparison of wc against
HEAD- i.e. show unstaged changes HEADorbranchorSHAortag- compare working copy against
HEAD/branch/SHA/tag
- compare working copy against
branch..- compare
branchwith wc
- compare
..branch- compare working copy with
branch
- compare working copy with
branch_a..branch_b- compare
branch_awithbranch_b
- compare
branch...- compare the merge-base of the working copy and
branchwith the working copy
- compare the merge-base of the working copy and
branch_a...branch_b- compare the merge-base of
branch_aandbranch_bwithbranch_b
- compare the merge-base of
SVN
- Default (when there's no input): show uncommitted changes
-r 123- compare revision 123 with the latest revision (not the working copy)
-r 123:234- compare revision 123 with revision 234
-c 234- show changes made in commit 234
--cl issue1234- show uncommitted changes on changelist
issue1234
- show uncommitted changes on changelist
Bazaar
- Default (when there's no input): show the difference in the working tree versus the last commit
-r1- Show changes between the working tree and revision 1
-r1..3- Show changes between revision 1 and revision 3
-r1..3 xxx- Show changes between revision 1 and revision 3 for branch xxx
-c2- Show the changes introduced by revision 2 (equivalent to
-r1..2)
- Show the changes introduced by revision 2 (equivalent to
-r-2..- Show the changes between the current revision and the previous revision (equivalent to
-c-1and-r-2..-1)
- Show the changes between the current revision and the previous revision (equivalent to
FILE- Show just the differences for
FILE
- Show just the differences for
xxx/FILE- Show the differences in working tree xxx for
FILE
- Show the differences in working tree xxx for
--old xxx- Show the differences from branch xxx to this working tree
--old xxx --new yyy FILE- Show the differences between two branches for
FILE
- Show the differences between two branches for
Configuration Options
Diff View Style
There are 2 different view styles supported - “Quick Panel” and “Persistent List”. You can see them in action in the screenshots above. Try them both and pick a favourite!
{
// The style for viewing the diff. Options are:
// - "quick_panel"
// - "persistent_list"
"view_style": "persistent_list"
}
Highlighting Styles
Each of the highlihgted regions' styles can be configured in the settings. These settings are all documented in the 'Default' settings (Preferences -> Package Settings -> DiffVew -> Settings - Default). Copy the settings to your User settings (Preferences -> Package Settings -> DiffVew -> Settings - User) to override the defaults.
Collapsing Changes List
When working with the “Persistent List” view, to save space there's a configuration option to collapse the list of changes for each file. Toggle the details for the file using Tab (by default).
To configure:
{
// Whether to collapse each file's list of changes in the "persistent_list" view.
"collapse_diff_list": true,
}
Invoking From Another Plugin
window.run_command(
"diff_view",
{
"diff_args": "origin/your-base...origin/your-branch",
"cwd": "/your/cwd",
},
)
Contributors
Thanks to the following for their contributions:
- @3v1n0 for adding Bazaar support
- @leeahoward for raising and providing the fix for #48
- @rkoval for adding an entrypoint for other plugins to use programmatically #65
Feedback
If you have any issues, comments, or feature suggestions, please raise them on GitHub. All feedback gratefully received.