Sublime Merge is available for 64 bit platforms only.
Sublime Merge may be downloaded and evaluated for free, however a license must be purchased for continued use. There is currently no enforced time limit for the evaluation.
Changelog
Build 2102
28 October 2024
New Features and Improvements
- Significantly improved repository scanning performance
- Improved diff generation performance
- Improved index loading performance
- Enhanced rendering performance: Significantly faster rendering due to theme processing improvements
- Added Create Branch from Tag… to the command palette and tag menus
- Updated untracked file ordering: Recent files are now displayed first
- File tabs: Increased file tab limit to 1000
- Locations Filtering: Added and, or, not, before:, and after:keywords
- Git LFS: Added Edit Tracked Pattern… to command palette
- Added support for character classes in Git rules
- Added select_ref selector for custom commands
- Ctrl+4 (Cmd+4 for Mac) now highlights the commit details panel
- Various syntax highlighting improvements
- Windows: Added support for Windows-style paths for dictionary preference
- Windows: Open in Editor now opens using the default editor for the file type
- Windows: Implemented scroll-resetting behavior when dragging scroll bar
- Linux: Implemented kinetic scrolling under Wayland
- Linux: Implemented xdg-activation protocol for Wayland
Fixes
- Fixed staged empty files: Newly staged empty files were incorrectly marked as "contents unchanged"
- Filename processing: Filenames with wildcards are now properly escaped when running Git commands
- Fixed freeze when loading certain diffs
- Fixed signature verification timing out too quickly
- Fixed overlay scrollbars blocking input when invisible
- Linux: Fixed crash on Wayland related to tab dragging
- Linux: Fixed issues with tab dragging under Wayland
Build 2096
22 April 2024
New Features and Improvements
- Enhanced the character diffing algorithm for greater precision
- Enhanced readability of text selections in diffs
- Improved rendering performance for file lists with many files
- Enhanced clarity of stash drop messages
- Improved submodule processing performance
- Introduced HDR file support for image diffs
- Added an option to display carriage returns at end-of-line, configurable per platform (visible_carriage_returns_at_eol)
- Introduced 'Switch Repository' option in the command palette
- Enhanced interface with additional assistive tooltips
- Refreshed the design of sidebar icons
- Windows: Enabled periodic garbage collection to improve performance
Fixes
- Resolved issues with viewport tracking in the Blame view
- Corrected incorrect icons displaying for newly created files in the Blame view
- Fixed restoration order of repository tabs
- Resolved unstaging errors for renamed files
- Eliminated jumping behavior in large tabs during dragging
- Fixed errors in the commit message cleanup process
- Removed irrelevant entries in the multi-file context menu
- Resolved processing errors in newline normalization rules
- Corrected search and blame algorithms to respect the selected diff algorithm
- Implemented multiple memory optimizations
- Enhanced stability by resolving multiple crashes
- Linux: Corrected font scaling issues related to the "ui_scale" setting
Build 2091
23 August 2023
New Features and Improvements
- Added ability to edit staged files directly using the index editor
- Text Diffs: Added diff_algorithm preference. By default, Sublime Merge will match the diff.algorithm Git preference.
- Text Diffs: Carriage returns are always rendered unless newline normalization is enabled
- Image Diffs: Added WebP support
- Search: Added is-visible keyword
- Search: Improved performance for contents queries
- Search: Added support for branch queries as a subqueries
- Repository Tabs: Added support for setting tab aliases via the tab context menu
- LFS: Added ability to track files via the Files list context menu
- LFS: Added icon to files tracked with LFS
- Day/month/year ordering is now extracted from the user locale
- Added support for loading Git objects on demand (partial clone support)
- Added Change Theme to command palette
- Added keybinding to navigate to the second parent of a commit (Alt+Shift+Down)
- Added support for the context key in mousemaps
- The parents row on commits with no parents is now hidden
- Improved repository scanning performance
- Various syntax highlighting improvements
Fixes
- Fixed files list selections sometimes resetting when filtering
- Fixed commit message ordering when squashing commits
- Fixed Sublime Merge crashing with non-required Git filters
- Fixed line count indicator showing for non-loaded diffs
- Fixed word-based commands being enabled for password fields
- Fixed the commit message editing command not providing Git output
- Fixed scroll position being reset after deleting a branch
- Fixed commit editing not showing the command output
- Fixed git commondir handling
- Fixed repository scanning crash with lock files
- Windows: Fixed argument quoting for MSYS2 Git
- Windows: Fixed Git clone failing on Windows when clone directory didn't exist
- Windows: Fixed tooltips sometimes not being removed
- Windows: Fixed OpenGL related crash
- Windows, Linux: Assigned Ctrl + F4 keybinding to close tab
- Linux: User config and cache paths are now created at startup if not present
- Linux: Fixed crash when switching windows with a context menu open
- Linux, Mac: Attempt to find the license key for the user when using sudo
- Mac: Better support for running as root
- Mac: Fixed unresponsiveness on certain signed commits
- Mac: Fixed various memory errors
Build 2083
6 February 2023
New Features and Improvements
- Automatically fetch with the new auto_fetch preference
- Files tab: Added support for multi-select
- Locations tab: Branches with invalid tracking information are now faded
- Added preference for ordering commit graph by author date
- Search: Selects the current search query when opening search page
- Custom commands now support selectors anywhere in an argument
- Added expand_untracked_files_by_default preference
- Added re-run button to failed commands in the command history
Fixes
- Windows and Mac: Updated bundled Git to 2.39.1 (addresses CVE-2022-41903 and CVE-2022-23521)
- Mac and Linux: Fixed large Git LFS diffs failing to load
- Mac: Fixed Sublime Merge crashing when child processes crash
- Fixed git filters hanging on Windows
- Fixed crash when creating tags on certain commits
- Fixed incorrect count in branch "ahead" indicator tooltips
- Fixed syntax highlighting performance issue due to backtracking
- Fixed modified commit messages being discarded when continuing cherry-pick
- Fixed memory leak when searching with certain terms
- Fixed HEAD indictator not updating when initializing submodules
- Fixed some Git commands failing on branches called stash
- Fixed "Resolve" conflict buttons not handling file deletions
Build 2079
14 November 2022
- Added Open Submodule to command palette
- Added Copy Tag Name to tag context menu
- Added support for GIT_CONFIG_SYSTEM and GIT_CONFIG_GLOBAL environment variables
- Improved unsafe repository detection
- Added license date to about window
- Fixed hunk header expansion selecting text beneath header
- Fixed bug that disabled commit message editing
- Fixed commit message loss when stashing in certain situations
- Fixed commit edits failing when submodule changes are detected
- Fixed signature verification failing for ssh signatures
- Fixed crash when opening context menu below table of contents
- Mac: Fixed license being removed due to mac address changing
- Mac: Miscellaneous Ventura fixes
Build 2077
22 August 2022
New Features and Improvements
- Patches: Easily create and apply patches using the commit and file
context menus. Apply patches using the application menu or command palette.
- Stash: Added support for --staged flag
- Diffs: Added/Deleted files are now always displayed as inline diffs
- Commit Graph: Added commit_graph_author_date preference
- Added Create Branch from Remote Branch back to command palette
- Added Open Containing Folder to the command palette
Fixes
- Fixed open_in_editor command waiting
- Update dialog now displays license validity information
- Updated pull/push keybindings to remove conflicts with OS keybindings
- Fixed table of contents files missing cherry pick and revert menu items
- Fixed signature verification and commit editing failing on repositories with detached working directories
- Fixed edit_commit_contents failing on commits with no grandparents
- Fixed navigate_to_tag failing to find tags
- Command history layout state now persists
- Fixed empty condensed branch annotations appearing
- Fixed file mode changes disappearing when all hunks are staged
- Fixed crash when staging certain files with file mode changes
- Improved commit message syntax highlighting
- Tweaked theming for headers in dark theme
- Various performance fixes
- Mac: Fixed double clicking on title bar not zooming
Build 2074
9 June 2022
New Features and Improvements
- Application: Added dialog to mark unsafe repositories as safe
- Tags: Added tags to checkout command
- Search: file and path queries now support absolute paths and Windows-style paths
- Files List: Added context menu for commit files
- Revert: Added warning when checking out a branch when a revert is in progress
- Various syntax highlighting improvements
- Added ruler_style setting
Fixes
- Submodules: Fixed submodule diffs showing outdated hashes
- Files List: Fixed discard filtered files ignoring the filter
- Files List: Fixed files list filter applying to commit dialog context menus
- Navigation: Fixed tab-navigation focusing on hidden dialogs
- Filters: Fixed certain filters causing the application to hang
- Commit Message: Removed extra padding in commit message input
- Mac: Fixed bundled Git compatibility
- Mac: Fixed context menu input focus bug
Build 2071
25 April 2022
New Features and Improvements
- Files List: Stage filtered files using the file section context menus
- Improved interface for staging/unstaging large changesets
- Commit List: Added keyboard support for opening context menus
- Branches: Combined all checkout commands into a single command
- Branches: Added ability to unset upstreams
- Search: Added auto-matching for quotes
- Submodules: Added support for non-absorbed submodules
- Create Tag: Added warning when tag name is invalid
Fixes
- Fixed scroll position being lost when dropping a commit
- Fixed scroll tracking when staging large files
- Fixed commit message container layout issues
- Fixed hunk container layout issue for large hunks
- Fixed OpenGL rendering issue related to the wrong context being active
- Fixed shadow related OpenGL rendering bug
- Fixed potential for corrupted menu items in commit message history
- Fixed back button not working in file history
- Syntax Highlighting: Fixed crash caused by starting a branch point at the end of a line
- Windows and Mac: Updated bundled Git to 2.35.3 (addresses CVE-2022-24765 and CVE-2022-24767)
- Mac: Fixed Ctrl+Mouse1 not opening commit graph context menus
- Mac: Added work around for broken modal loops
- Linux: Follow system scroll bar overlay setting
- Linux: Fixed various issues caused by the C locale
Build 2068
21 December 2021
New Features and Improvements
- Search: Quickly write queries with auto-complete suggestions
- Improved OpenGL rendering performance by automatically batching together controls
- Fetch / Pull Command: Added ability to fetch tags
- Merge Command: Merge unrelated histories using the allow-unrelated-histories flag
- Set Upstream Command: Indicate the current upstream in the list of remote branches
- Commit Details: Added context menus to commit metadata items
- Commit Dialog: Stage submodule changes using Enter
- Commit Messages: Added support for strip and default modes of commit.cleanup
- Commit Messages: Warn when commit message only contains comments
- Context Variables: Access the in-progress commit message via the commit_message variable
- Settings: Highlight missing signatures and public keys as errors with signature_error_highlighting
- Settings: Added draw_unicode_bidi setting, which is enabled by default
- Recent Repositories: Added Clear missing menu item
- Recent Repositories: Prompt to remove from list when opening non-existent repositories
- Clone Page: Added tooltips to clone page inputs
Fixes
- Commit Editing: Fixed author information being updated
- Fixed lines with whitespace preceding comment characters being treated as comments
- Fixed light changelog displaying when dark theme is enabled
- Fixed crash when selecting previous commit messages containing certain UTF-8 sequences
- Fixed issue with rebase branch preview
- Fixed data corruption potentially occurring if a crash happens while saving the session
- Fixed crash when filtering table of contents
- Windows: Fixed crash when OpenGL initialization fails
- Mac and Windows: Fixed command line / terminal not taking focus after waiting
- Mac: Fixed Window > Merge All Windows merging minimized windows
- Mac: Fixed native tabs restoration resulting in odd behavior
- Linux: Added missing libcurl dependency for package managers
Build 2063
26 Oct 2021
New Features and Improvements
- Search by branch using the branch: operator or via the branch context menus
- Stage hunks and individual lines on untracked files
- Navigate to commit references in commit messages using the context menu
- Add comment and commit highlighting to commit messages
- Added new update dialog that shows versions, license status and links to the changelog
- Added indicators to repository tabs with uncommitted changes
- Added context menus for uncommitted file tabs
- Updated repository tabs to show the full repository path in a tooltip
- Updated file tabs to show the relative path in a tooltip
- Improved the authentication dialog for GitHub users
- Improved hardware acceleration performance when rendering white space
- Improved the update_remote_url command to populate with the current URL
- Various syntax definition updates
Fixes
- Fixed gpg hanging on certain systems
- Fixed the incorrect menu showing for staged files
- Fixed diff selections not rendering correctly when line_padding is set
- Windows: Fixed slow window creation when using OpenGL
Build 2059
23 July 2021
New Features and Improvements
- Cherry Pick multiple commits via the commit graph and context menu
- Cherry Pick: added support for the-x flag
- Revert multiple commits via the commit graph and context menu
- Set commit templates via the Git config variable commit.template (see here for more info)
- Hardware Acceleration: multiple performance improvements
- Double click remote branches to create local branches in the Locations bar
- Added Copy Repository Path to action menu
- Added Update remote URL and Copy remote URL to remote context menu
- Focus on the checked out branch using Ctrl+8 (Cmd+8 for MacOS)
- Open recent commit messages using Ctrl+; (Cmd+; for MacOS)
- Add Remote: name input is now validated
- Updated "Pull" button to perform a fetch when in a detached HEAD state
- Mac and Linux: open Quick Switch Repository via Ctrl+Alt+P/Cmd+Ctrl+P
- Tweaked how the Push command is displayed in the command palette
- Safe mode shortcuts can be disabled by creating a file in the data directory called .Disable Safe Mode Shortcut
Fixes
- Fixed cherry picks failing when the parent folder doesn't exist
- Restored missing Continue button when a cherry pick has been paused
- Restored missing commit button when unmerged files are present
- Fixed up/down behavior in command palette
- Fixed image diffs failing to load Git LFS images
- Fixed default input focus for the files list
- Fixed Sublime Merge opening a new window via Sublime Text integrations
- Fixed crash when closing window
- Disabled discard command for staged files
- Windows: fixed globs not being expanded sometimes
- Linux: Improved cancel/ok dialog ordering consistency
Build 2056
17 May 2021
- Add $commit_message context variable for historical commits
- Fix memory leak on Windows
Build 2054
4 May 2021
- Mac releases now include native Apple Silicon binaries
- Easily filter through large filesets using the new files filter
- Cherry pick hunks using the … button on hunks
- Moving the caret in diffs now scrolls the viewport
- Added the chain command, which accepts a list of commands to run in its "commands" argument - useful for chaining Git commands together
- Improved default selection behavior for switch repository
- Commit message history: ensure entries are unique
- Added support for Scroll Bar.sublime-mousemap to customize scrollbar interaction
- Added "Report a Bug" entry in the Help menu
- Linux: use native file dialogs, allowing use of the KDE dialogs
- Windows: fixed clone dialog not pre-filling
- Fixed gpg signature verification hanging
- Fixed stale commit messages displaying when editing commit contents
- Fixed memory issue when rebasing
- Fixed command status popups not disappearing
Build 2050
12 March 2021
- Allow command palette navigation with Tab / Shift + Tab
- Fixed newlines appearing in the commit message history
- Fixed blame tooltips not updating in certain circumstances
- Fixed crash when staging files with certain file encodings
- Windows and Mac: updated bundled Git to 2.30.2 (addresses CVE-2021-21300)
- Windows: fixed clean and smudge filters hanging on certain files
- Linux: improved application menu theming
Build 2047
23 February 2021
New Features
- Location bar: find branches easily with the new filter bar
- Location bar: ahead / behind indicators can now be clicked to push / pull
- Location bar: branch folders now have context menus
- Tags: added command to checkout tags
- Tags: added command to delete remote tags
- Stashes: added command to delete all stashes (git stash clear)
- Push: added --no-verify option
- Remote branches: added command to checkout corresponding local branch
- Custom commands: select remotes with the new select_remote selector
- Added resize_window command
- Added commit message tooltip to each parent in the parents section of a commit
Improvements
- Windows: upgraded the application title bar
- Linux: upgraded the application title bar on Gnome
- Image diffs: PSD, TGA, PPM, and PGM files now display a rich diff
- Blame: significant loading time improvements
- Commit graph: simplified context menus
- Improved indentation detection
- Switch Repository dialog: open new tabs via Ctrl key (Cmd for MacOS)
- Updated Ctrl+R/Cmd+R to run navigate_to_branch command
- Updated refresh command keybinding to Ctrl+Shift+H/Cmd+Shift+H
- Updated diff titles to elide when space is limited
- Updated theming of the files list
- Added various syntax highlighting improvements
- Detached HEAD state is now more explicit
- Remember which workspace each window is in by default (controlled via the setting remember_workspace)
- Parent folders of the currently checked out branch are now highlighted in the location bar
- Navigation commands: a warning is displayed when exiting the merge tool
- Askpass dialog now supports fingerprint input
- Askpass dialog now detects keypad Enter
- Added themed_title_bar setting
- Menu files: added submenu IDs
- Interactive rebase: the break flag is now supported
- Mac: improved OpenGL rendering performance
- Windows and Mac: Updated bundled Git to 2.29.2
- Linux: added various performance optimisations
Fixes
- Editing commits now signs the edited commits
- Added back missing progress bar for long-running commands
- Fixed newly cloned repositories not loading preferences
- Previous commit messages are now saved per-repository
- Fixed incorrect context menus displaying in location bar
- Improved compatibility on filesystems with large timestamp imprecision
- Fixed inability to revert files if their parent directory does not exist
- Fixed crash when closing the preferences page
- Fixed empty selections being rendered as a line
- Fixed window positions not restoring correctly in certain situations
- Mac: smerge now correctly restores window positions
- Mac: updated icon to follow macOS 11 style
- Mac: added a workaround for Apple M1 OpenGL graphics driver bug that caused text to be rendered incorrectly
- Mac: fixed bug in batching of large Git commands
- Mac: added workaround for the command line helper when app translocation is in effect
- Windows: added a workaround for Intel OpenGL graphics driver bug that caused black bars at the top of some windows
- Windows: fixed glyph rendering bugs
- Windows: fixed flashing when using OpenGL and resizing a window
- Windows: fixed bug in subpixel antialiasing
- Linux and Mac: fixed clean and smudge filters hanging on certain files
- Linux: fixed bug with the caret not moving after performing a text drag
- Linux: fixed freezing on KDE Plasma
Build 2038
30 October 2020
New Features and Improvements 💎
- Added commit graph theming improvements - branch colors now match graph edge colors
- Updated custom git commands to support launching editor
- Updated custom git commands to allow for selecting branches and other refs - see the docs for details
- Improved commit dialog scroll tracking
- Added navigate_to_stash command
- Added Drop Stash… to the command palette
- Tweaked merge algorithm to merge nearby conflicts
- Updated clone page to trim leading and trailing whitespace
- Updated create_branch/rename_branch command to convert whitespace to hyphens
- Improved lexer performance
Preferences 🎚️
- Added editor_wait_args to preferences
- Added preference set GIT_SSH env var (useful for overriding the default SSH client)
- Updated preference categories
Git ⚙️
- Updated image diff file size limit
- Fixed bug were commits only reachable by tags were not visible
- Fixed edge case bug when staging single lines
- Fixed revert hunk displaying success message in some failure cases
- Fixed bug where some Scalar pack files weren't loaded
- Windows: fixed bug with git config path resolution
Miscellaneous Fixes 🐞
- Fixed incorrect ordering of commit dialog tabs
- Fixed smerge not preserving session information in some situations
- Fixed session loading bug with multiple repository tabs
- Fixed bug with Korean IME
- Fixed commit summary sizing bug
- Fixed inability to scroll to the end of the commit dialog in some circumstances
- Fixed invalid initialize submodule menu item
- Renamed Show Branch… to Show Hidden Branch…
- Fixed edge-case in delete_remote command
- Fixed theme reloading twice
- Fixed clone page not receiving input focus by default
- OpenGL: fixed rendering issue due to AMD driver bug on Windows
- OpenGL: fixed blurry checkboxes
- OpenGL: improved bold rendering with bugged intel drivers
- Syntax Definitions: fixed infinite loop bug
- Syntax Definitions: renamed TypeScript to TSX, and added a new vanilla TypeScript syntax
Build 2032
25 August 2020
New Features and Improvements 💎
- Added full file diffs - click the toggle button in the hunk header to toggle between individual changes and the full file
- Added Git LFS image diff support
- Improved performance when loading image diffs
- Added history dropdown to the search page
- Added tab selector to the repository tab bar
- Improved --set-upstream behavior
- Linux: added touch event handling
Rendering 🎨
- Fixed an OpenGL text rendering issue
- OpenGL: fixed glyph corruption due to an AMD driver bug on Windows
- Mac: fixed rendering bug
Diffs 📃
- Fixed clean filters not applying to modified files
- Fixed context dragger not displaying for some diffs
- Fixed scrolling behavior regression in commit dialog
- Windows: fixed directory junctions being marked as untracked
- Fixed line-based operations failing occasionally
Miscellaneous Fixes 🐞
- Updated show_all_refs to display when any refs are hidden
- Fixed incorrect context menu behavior when the underlying controls are updated
- Fixed signed tags failing when no tag message is supplied
- Fixed custom themes not loading into askpass dialogs
- Fixed input focus handling in commit dialog
- Improved scrolling behavior in preferences page
- Windows: fixed crash on Windows due to IME
- Windows: fixed clone page not automatically populating source URL
- Windows: fixed bug in open_dir_in_sublime_text
- Mac: added support for editor arguments in preferences
- Windows: fixed crash when window edge overlaps with faded text
Build 2027
28 July 2020
- Fixed high memory usage associated with image diffs
- Windows: fixed open_dir_in_sublime_text sometimes missing on Windows
Build 2025
22 Jul 2020
New Features and Improvements 💎
- Added image diffs
- Added Revert Hunk
- Added rename_remote command
- Added --set-upstream option to push menu
- Added always_show_command_status preference
- Commit Signatures: added GPG4Win support
- Search: added tree operator, which matches commits with the given tree hash
- Improved merge algorithm for merge tool
- Improved gitflow finish support
- Added drag-drop support to welcome page
Rendering 🎨
- Fixed several OpenGL related rendering issues
- Color Schemes: Fixed text background drawing over underlines
Syntax Definitions 📝
- Added out of the box support for TypeScript and JSX, with thanks to Thomas Smith
- Added "extends" keyword in .sublime-syntax
- Added "version: 2" in .sublime-syntax to fix edge cases while retaining backwards compatibility
- Added lazy loading of external "embed" actions
- Reduced cache size on disk
- Prevent infinite include loops via with_prototype
- Improved matching performance and memory usage
- Added "hidden_extensions" in .sublime-syntax
- Allow combining "pop" with "push"/"set"/"embed"/"branch"
- Fixed a number of scope related bugs
- Fixed some regex capture related bugs
Input Handling ⌨️
- Added forward and back navigation to mousemap
- Mac: Fixed ctrl+mouse1 not matching the behavior of mouse2
- Windows: Fixed IME bugs
Miscellaneous Fixes 🐞
- Windows: safe mode is now activated via shift+alt
- Search: fixed typographical error
- Fixed git command output scrolling when output overflows dialog
- Fixed freeze when switching tabs while command palette is open
- Fixed some symlinks being incorrectly marked as modified on Windows
- Session is now saved when application is notified of system shutdown
- Improved contrast between selected and unselected repository tabs
- Fixed minor file tab theming bugs
- Fixed crash when core.ignorecase is enabled
- Fixed crash when navigating to a commit message while rebasing
- Location Bar: fixed incorrect branch count with nested branches
- Files Bar: fixed selection regression in tree view
- Fixed selection bug in command palette
Build 2020
26 May 2020
General
- New UI, including repository tabs
- GPU Rendering
- UI: Reworked Commit Dialog
- UI: Added repository tabs, to have multiple repositories open in a single window
- UI: Added file tabs when viewing the contents of a commit
- Implement commit signature creation and validation
- Added a lines changed indicator to commits
- Added command history, available from the Show Git Output icon in the tool bar
- Added commit message history, available from the dropdown arrow in the commit message box
- Added support for non-overlay scrollbars in diffs
- Added Resolve Ours / Resolve Theirs dropdown to unmerged files
- URLs in commit messages and git output can be opened via the context menu
- Left and Right keys can be used to expand/collapse merge commits
- Added Navigate/Go to Child
- Stash commands no longer supply -q by default, to work around a bug in Git 2.24
- Checking out a hidden ref will make the ref visible
- Add Recent Repositories to Welcome Page
- Search: Added before and after operators
- Added set_preference and toggle_preference commands
- Added gitflow publish support
- Preferences: Updating settings via the preferences dialog no longer clears comments in the settings file
- Preferences: Added Preferences entry for Ignore Whitespace in diffs
- Added checks for pushDefault and pushRemote when pushing
- Added Tools/Show Console
- Improved selection behavior while loading large repositories
- Improved menu auto hide behavior on Linux and Windows
- Improved performance with a very large number of untracked or modified files
- Improved performance in repositories with a large number of authors
- Running smerge without any arguments will focus the current window, if any
- Fixed not being able to commit when email is set to empty string
- Fixed a bug in destination path calculation in the clone dialog
- Fixed Create Tag with an empty message creating the tag incorrectly
- Fixed hunk staging using the wrong encoding in some scenarios
- Fixed shift+enter staging a file even when focus is in commit message box
Merge Tool
- Indentation settings are now automatically detected from the contents of the file
- Saving a file with unresolved conflicts will warn before saving
- Added a preference to trim trailing whitespace on save
GPU Rendering
- New hardware_acceleration setting will composite the UI on the GPU
- By default, GPU rendering is enabled on Mac, and disabled on Windows and Linux. This can be changed via the Preferences dialog.
- Details about the active GPU will be displayed in the Console
Git
- Git: Added support for smudge and clean filters, enabling Git LFS support
- Git: Improved handling of the working-tree-encoding attribute
- Git: Improved parsing of .gitattributes files
- Git: Added support for GUI encoding config
- Windows and Mac: Updated bundled Git to 2.26.2
- Windows: Fixed core.worktree support
- Submodules: Added Initialize All Submodules context menu
- Submodules: The location bar now indicates the value of HEAD for each submodule
Editor Control
- Expanded draw_white_space setting, supporting leading and trailing white space
- Unicode white space characters, such as the zero width no-break space, are now drawn as hex values. Controlled via draw_unicode_white_space setting.
- Spell Checking: Added support for languages with upper case characters after start of word
- Spell Checking: Updated dictionaries
- Spell Checking: Added support for non-utf8 dictionaries
- Spell Checking: System dictionaries are now available on Linux
- Spell Checking: Dictionaries in ~/Library/Spelling are now available on Mac
- Linux: Text drag and drop is now supported
- Linux: Added support for alternate font weight names
- Linux: Selection is no longer cleared when another application makes a selection
Text Commands
- Improved behavior of Wrap Paragraph
- Improved behavior of Swap Lines
- Added Selection/Expand Selection as a general mechanism to expand the selection
- Selection/Split into Lines will now split a selection into words if the selection doesn't contain any newlines
- Fixed swap_line_down not being able to swap an empty line onto the last line of a file
Input Handling
- Modifier key taps can now be used as part of a key binding. For example, ["ctrl", "ctrl"] will trigger when Ctrl is pressed twice without pressing any other keys in between.
- Linux: AltGr can now be used in key bindings via altgr
- Linux: Added a workaround for a touchscreen driver bug, which would cause right click and mouse scrolling to stop working
- Linux: When the menu is hidden, pressing alt will show it
- Linux: Improved compatibility with some keyboard layouts
- Mac: Fix Pinyin input
- Mac: Keypad keys can now be bound to as expected
- Mac: Improved compatibility with some keyboard layouts
- Windows, Linux: Hide mouse cursor when typing. Controlled via hide_pointer_while_typing setting.
- Windows, Linux: Fixed being unable to bind Ctrl+Break
- Windows: Improved IME support
- Windows, Linux: Added Shift+F10 key binding to open the context menu
UI
- Added highlight_gutter and highlight_line_number settings
- Themes now have a style property for title_bar element, for better integration with OS "dark modes"
- Color Schemes: Added glow font option to color schemes
- Color Schemes: Added support for the underline font style
- Linux: Show sequential key bindings in the menu
- Linux: Fixed context menu position being slightly offset
Rendering
- Windows, Linux: Added support for per-display subpixel ordering
- Mac: Improved window resize performance
- Windows: Fixed rendering bug where other applications could cause persistent artifacts via window animations
Application Behavior
- Added Safe Mode, to simulate a clean install. Enabled by passing --safe-mode on the command line.
- Holding down Shift on Windows, or Option on macOS, will start Sublime Merge in Safe Mode
- Settings containing a UTF-8 BOM will no longer fail to load
Syntax Definitions
- Added ability to "branch" within syntax definitions, for non-deterministic or multi-line constructs
- Many syntax highlighting improvements, including significant improvements to:
- Improved syntax definition load time
- Fixed a performance issue with bounded repeats in regular expressions
Build 1116
3 June 2019
- Large files are now only diffed when clicked on
- Merge Tool: Added Take Left and Take Right options
- Merge Tool: Can now Save and Stage in one action
- --no-verify can be passed when committing
- Rebase Commit is now available in the context menu for all commits
- Revert Commit now works with merge commits
- Added separate key bindings for Stage All and Stage All Modified files for clarity
- Added an explicit close button to the search bar
- Table of Contents: Clicking an already selected row no longer closes the diff
- Various syntax highlighting improvements
- Improved behavior when doing a line restricted file history search and toggling ignore whitespace
- Added support for the intent-to-add flag in the index
- Fixed includeIf handling in git config files not interpreting ~ relative paths correctly
- Fixed UTF8 BOMs not being handled correctly in .gitignore files
- Fixed Edit Commit Message not working in work trees
- Fixed standalone merge tool not supporting the key binding for Next Conflict
- Fixed smerge mergetool not handling relative paths correctly
- Fixed smerge log <dir> not working as expected
- Mac: Added a workaround for a macOS OpenGL driver bug in 10.14.4
- Linux: Fixed incorrect file ownership in the deb packages
- Linux: Added support for text drag and drop
- Linux: Improved high dpi handling under KDE
Build 1107
12 March 2019
- The Contents section of the sidebar can now be switched between showing changed files and all files
- Sublime Merge can now be used as a standalone merge tool, via the smerge command line helper. See smerge --help for details.
- Merge tool: Improved UI for switching between the Base file and the Merged file
- Added Navigate/Go to Parent menu item
- Improved clone dialog
- Improved side bar context menus
- Various syntax highlighting improvements
- Merge tool now indicates which lines have been modified in the merged file
- Merge tool: swap_line_up, swap_line_down and duplicate_line commands are now supported
- Fixed git flow commands appearing inconsistently
- Mac: Add full support for macOS native tabs
- Mac: Ensure context menus are shown without scrolling
- Mac: Error message dialogs can now be closed with the escape key
- Linux: Color glyphs are now drawn properly on light backgrounds
- Windows: Fix DirectWrite handling of fonts with lineGap > 0
Build 1103
24 January 2019
- New Preferences Dialog
- New Merge Dialog
- Added support for includeIf in Git config files
- Various syntax highlighting improvements
- Windows and Linux: Improved IME compatibility
- Added Navigate to Branch
- Added Navigate to Tag
- Added Set Branch Upstream to the Command Palette
- Added Hide Branch to the branch context menu
- Added Hard Reset option to the diverged banner
- The diverged banner now shows the exact git commands that will be run in tooltips
- Improved behavior of clone dialog when selecting a target directory
Build 1097
6 December 2018
- Various syntax highlighting improvements
- Fixed backspace not discarding selected lines
- Mac: Improved resize performance
- Mac: Fixed missing key bindings in menu items
- Windows: Fixed Clone dialog not working correctly
- Windows: Updated Git Credential Manager to 1.18.1
- Linux: GTK3 + Wayland compatibility fixes
- Linux: Fixed GTK3 double and triple click handling
- Linux: Fixed a crash when using GTK_IM_MODULE=xim
Build 1092
29 November 2018
- Added Contents view in the side bar, to focus on individual files
- Double-clicking or pressing space in the commit graph will focus on the first file of the selected commit
- Added Word Wrap
- Clone: Can now change the directory name being cloned into
- Added hide_menu setting
- Edit Commit: Added Edit Commit Contents
- Edit Commit: Added Fixup Commits
- Edit Commit: Can now Drop multiple commits at once
- Edit Commit: All Edit Commit operations now work with a detached head
- Preferences: Can now set rulers via the preferences menu
- Added Open Repository in Sublime Text menu item
- Binary file detection heuristic now matches Git
- Search help text is scrollable
- Unicode: Improved rendering of combining characters
- Ignore whitespace now only ignores space and tab changes, not newline changes
- smerge blame now starts the blame from HEAD, rather than the selected commit
- Fixed Delete Branch not always prompting for force delete when it needs to
- Fixed line history not showing the initial commit that added the file
- Fixed smerge blame not navigating to the target line when Sublime Merge is already running
- Fixed search results being cleared when the repository is modified
- Fixed viewing trees from search results not working when the commit is folded away
- Git Flow: Fixed menu commands not working as expected
- Fixed SSH Askpass helper only showing the first prompt line
- Windows: Fixed handling of daylight saving time
- Linux: Moved to GTK3
Build 1084
29 October 2018
- Search: Added contents: operator, to find commits introducing or removing text
- Can now ignore whitespace changes in diffs (available from the context menu)
- Edit Commit: Added Squash Selected Commits
- Support for core.worktree
- Window state is now restored when re-opening a repository
- Search: Merge commits are now automatically excluded when the query includes path:, file: or contents:. Specify min-parents: 0 to include them.
- Location Bar: Tags are grouped into folders if they have a slash in their name
- Tweaked commit graph rendering
- Add new preference, time_format
- Preferences: Default values are now indicated, rather than null
- Preferences: Unquoted strings are accepted
- Improved handling of network issues when working with repositories over a networked file system
- Navigate to Commit now works as expected for hidden commits
- Fixed context splitter showing through hunk headers
- Fixed expand_merge_commits_by_default not being applied correctly at startup
- Fixed bold text sometimes being applied incorrectly in the side bar
- Fixed a blame regression in 1079
- Mac: Added gpu_window_buffer setting, to disable usage of OpenGL
Build 1079
21 October 2018
- Added "Merge With…" context menu to merge a branch with flags (--squash, --no-ff, etc)
- Edit Commit: Added Move Commit Up
- Edit Commit: Added Move Commit Down
- Edit Commit: Added Drop Commit
- Commit context menu tweaks
- Location Bar: Refs are sorted via natural sorting, making numeric refs sort as expected
- Make tag message optional for git flow finish command
- Add git_env preference, to set the env vars git is launched with
- Fixed a crash regression in 1075
- Fixed stash labels having the wrong size
Build 1075
16 October 2018
- Submodules are shown in the location bar
- Submodules: Double clicking on a submodule will open the corresponding repository
- Submodules: The number of modified and untracked files are shown next to each submodule
- Submodules: New submodules can be added by right clicking in the location bar, or via the Command Palette
- Submodules: Added functionality for Initialize, Update and Sync
- Git Flow: Added support for git flow commands, via the Command Palette
- Added setting expand_merge_commits_by_default, to unfold all merge commits by default
- Show line and column position when entering a commit message
- Partially entered commit messages are stored in the session
- Hovering over a remote in the location bar will show its URL
- Added key bindings for Pull and Push
- Stage All will set input focus to the Commit Message entry box
- Fixed Stash key bindings not being set correctly on Windows and Linux
- Fixed per-branch ahead/behind counters not matching git output
- Fixed entries removed from .gitmodules not being handled the same way as git
- Fixed always visible scrollbars for submodule changes
- Fixed a case where remote branches would be displayed incorrectly in the location bar
- Fixed remotes with dots in their name not being parsed correctly
- Fixed unix domain sockets showing up as untracked files
- Windows: Updated bundled git to 2.19.1
- Windows: Fixed extraneous horizontal scrollbar in some high dpi modes
- Windows: Minimized and Maximized windows are now restored as expected
- Mac: Updated bundled git to 2.19.0
- Mac: Clicking on the dock icon will create a window if there are none
Build 1070
10 October 2018
- Commit Folding: Merge commits are now folded by default; click on their icon to unfold
- Location Bar: Branches can be hidden by clicking on the new eye icon
- Location Bar: Alt-clicking will hide everything but the clicked on branch
- Location Bar: The location bar is now a tree
- Location Bar: Branches with slashes in their name are grouped in folders
- Location Bar: Added per-branch ahead/behind counters
- Location Bar: Width is stored in the session
- Added Copy to Clipboard in the branch context menu
- The commit message is now preserved when git commit fails
- Added a Tools/Password Caching menu to easily setup credential caching on Linux
- Added a git_config command to set git configuration options via the keyboard or menu
- Clicking next to the author label no longer shows the Edit User dialog
- Allow creating tags with empty messages
- Fixed incorrect submodule handling with core.ignorecase turned on
- Fixed a regression where the Continue Rebase button wasn't being shown
- Fixed a case where git attributes weren't interpreted correctly
- Changed handling of invalid gitignore rules, such as **\test to treat them the same way as Git
- Fixed a crash that could occur when parsing git config files
- Fixed a crash that could occur when closing a repository
- Mac: Improved font rendering on Mojave
- Mac: Fixed some commands not working when using the bundled version of git
Build 1065
2 October 2018
- Added Stage All and Discard All buttons
- Git worktrees are now supported
- Support for .git directories populated with symlinks, as in AOSP
- core.commentchar is now understood
- Improved comment filtering when entering commit messages: only automatically generated comments will be stripped
- Improved rename detection when viewing diffs and searching for files
- Search: Now accepts "commit:" terms for search by commit hash
- Restyled git error popup
- Stash can now accept a message
- Merge Tool: Improved LF vs CRLF selection logic
- Fixed incorrect default value for core.excludesfiles
- Fixed handling of backslashes in .gitignore files
- Ctrl+F/Cmd+F no longer starts searching while in merge mode
- Mac: Fixed windows being created offscreen in some setups
- Mac: Fixed alpha blended windows on Mojave
Build 1062
27 September 2018
- Fixed a regression in 1061 where unmerged files weren't updating
- Mac: Basic support for Mojave Dark Mode
Build 1061
26 September 2018
- Full core.ignorecase support, fixing some cases where status output differed from git
- Added support for core.precomposedunicode
- Added support for core.filemode
- Added support for core.symlinks
- Mac: Query login shell for default env vars
- Fixed not checking $HOME/.config/git/config as a default config file path
- Improve change descriptions for submodule changes
- Merge Tool: Improved LF vs CRLF selection logic
- Tweaked scroll delta when scrolling with the mouse wheel
- Windows: Adjust $HOME calculation to match Git
Build 1058
21 September 2018
- .gitgnore rule handling improvements
- Improve handling of case-insensitive repositories
- Allow committing to a detached head
- Support for files marked --assume-unchanged and --skip-worktree
- Fix dropping of stashes from the location bar not working correctly
- Windows: Added SSH askpass support
Build 1055
20 September 2018