We’re very happy to announce that the next major update to SourceTree for Mac is now available. This release focuses on improved visual design in areas such as the file status and diff views, and a much improved, more streamlined commit experience.
New Commit Experience
We’ve streamlined the commit experience so that it is no longer a separate sheet, but instead it’s built right in to the file status view:
Stage files with checkboxes
You can mark whole files for inclusion in the next commit (stage them in git terms) by checking the boxes in the file list:
[Edit] You can also use the spacebar to toggle the checkboxes for the current selection if you want to stage / unstage many files at once.
If you’re new to SourceTree, our default mode for git is simply for you to check the files you want to commit, which is more approachable to people who don’t understand staging yet. However as soon as you use one of the staging functions, SourceTree will switch to showing the staged and unstaged areas as above, which is what most more advanced Git users will want to see. You can switch back and forth between the simple and advanced modes on the context menu:
Quick access to common file operations
While you can still use the right-click context menu on files to access the full gamut of operations, we’ve also added a quick-access panel for the most commonly used actions, just click the ‘…’ button on the right of a file entry:
The new diff view
The diff view has been given a complete overhaul both visually and functionally. Not only does it look much cleaner, it makes better use of the space, with each hunk hunk of code scrolling independently (rather than everything being one big scrolling area), and controls are locked to the edges of the view for easier access. The functions for manipulating hunks and lines now switch depending on what you have selected; select lines of code to bring up the line buttons, click anywhere outside the code to deselect and bring the hunk buttons back.
Of course you can still stage, unstage and discard from the diff down to a line level:
The new commit pane
Finally when you come to commit, the commit panel simply pops up from the bottom of the file status pane (where you can see any draft message you might have already started to write), either by clicking on it, or using the usual Cmd-Shift-C keyboard shortcut.
As you can see, this is a lot more streamlined, but all the options are still there, and you can drive them with keyboard shortcuts now:
- ⇧⌘P – Toggle the ‘push’ option
- ⇧⌘O – Open the Commit options drop-down (amend last commit, signing etc)
- ⌘↑ – Previous commit messages
- ⌘⏎ – Confirm commit, as before
If you change your mind and don’t want to commit immediately, just hit Escape and everything will be saved for when you want to come back and finish it off.
To access the author settings, just click your avatar:
It’s time to upgrade
From now on SourceTree requires Mac OS X 10.7 or higher; 10.6 is no longer supported although you can of course continue to use previous versions of SourceTree on that platform.
There’s more!
There are lots of other refinements we don’t have room for here:
- Side-by-side binary diffs
- An improved setup wizard to get new users started
- Automatic switching to ‘All Files’ filter when you search on an empty file status list
- Subtree support now includes a squash option when adding
- Amend last commit is now supported in Mercurial too (hg 2.2+ required)
- The Working Copy sidebar entry now has an indicator of the number of files uncommitted
- Hosted Repositories now automatically shows repositories for all the teams/projects/organisations your account has access to
- …and even more
We hope you like the new version of SourceTree as much as we do!