ctrl+shift+p filters: :st2 :st3 :win :osx :linux
Browse

Diff​View

by CJTozer ST3

Side-by-Side Git, SVN and Bazaar Diff Viewer for Sublime Text 3

Details

Installs

  • Total 14K
  • Win 6K
  • OS X 5K
  • Linux 3K
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 Sep 11 Sep 10 Sep 9 Sep 8 Sep 7 Sep 6 Sep 5 Sep 4 Sep 3 Sep 2 Sep 1
Windows 7 8 3 2 9 5 5 5 6 4 1 11 8 5 16 6 1 2 4 10 7 8 10 4 4 3 13 12 6 6 6 7 10 7 6 16 5 2 0 4 9 10 4 10 0 2
OS X 4 11 1 2 6 11 12 10 11 2 3 2 6 6 12 6 3 2 6 11 5 13 5 1 2 9 9 5 4 5 5 1 8 9 4 11 4 2 2 5 11 4 9 8 3 0
Linux 2 3 2 3 3 2 7 6 2 0 1 6 5 4 6 7 1 3 4 3 0 7 4 2 3 7 9 6 3 2 1 0 5 5 9 3 6 1 0 8 7 1 4 4 2 2

Readme

Source
raw.​githubusercontent.​com

DiffView for Sublime Text 3

Git, SVN and Bazaar Diff Viewer for Sublime Text 3

Travis Release Installs The MIT License Codacy Gitter

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)

Screenshot

With 'Quick Panel' view style

Screenshot

Installation

  1. Install the Sublime Text Package Control plugin if you don't have it already
  2. Open the command palette and start typing Package Control: Install Package
  3. Enter DiffView

Usage

  • See options under “DiffView” in the Command Palette, and also the following keyboard shortcuts
  • Alt + Shift + D to 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 Enter to jump to the currently selected change
    • hit Esc to cancel the DiffView, and return to where you were
  • Alt + D to 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
  • HEAD or branch or SHA or tag
    • compare working copy against HEAD/branch/SHA/tag
  • branch..
    • compare branch with wc
  • ..branch
    • compare working copy with branch
  • branch_a..branch_b
    • compare branch_a with branch_b
  • branch...
    • compare the merge-base of the working copy and branch with the working copy
  • branch_a...branch_b
    • compare the merge-base of branch_a and branch_b with branch_b

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

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)
  • -r-2..
    • Show the changes between the current revision and the previous revision (equivalent to -c-1 and -r-2..-1)
  • FILE
    • Show just the differences for FILE
  • xxx/FILE
    • Show the differences in working tree xxx for FILE
  • --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

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,

}

Contributors

Thanks to the following for their contributions:

  • @3v1n0 for adding Bazaar support
  • @leeahoward for raising and providing the fix for #48

Feedback

If you have any issues, comments, or feature suggestions, please raise them on GitHub. All feedback gratefully received.