SourceTree 2.0.0b1 - mostly a bugfix release
'Mostly' a bugfix release because this picks up the auto layout conversions that have been done so far but it's mostly to catch up with 1.9.7 crash fixes.
- Work in progress conversion (about 2/3rds) of all UI to auto layout to allow more translations for the next major version.
- Fixed several intermittent crash issues
- Re-implement support for git commit templates which was accidentally omittied in 1.9 (SRCTREE-2586)
SourceTree 1.9.6b0 - bugfix release (same as 1.9.6 official)
- Fix failure to auto-refresh in the case where 2 file events are raised while the app is in the background, one which should be ignored and one which shouldn't (SRCTREE-2531)
- Rename context menu 'Commit' to 'Commit Selected' for clarity (SRCTREE-2556)
- Fix crash when pushing a git-svn repository to an alternate Git repository (SRCTREE-2554)
- Fix a crash if a repository window is closed while a binary diff preview is being generated(SRCTREE-2552)
- Fix tree view not maintaining checkbox state across refreshes and also reporting 'No files selected' when there are (SRCTREE-2558)
- Fix diff hanging on lines with several hundred thousand characters; diffs are now limited to max 10k characters per line (SRCTREE-2533)
- Updated translations
- A couple more compatibility fixes for OS X Lion (10.7) which were missed in the last hotfix
SourceTree 1.9.5b10 - hotfix (same as 184.108.40.206 official)
- Fix compatibility issues with OS X Lion (10.7)
- Fix problem with authentication prompt when using HTTPS URL on private git repos
- Fix missing right-click menu on files within a commit when viewing in tree view
SourceTree 1.9.5b9 - bugfix release (same as 1.9.5 official)
- Extend broken encoding fix to revision details and incoming/outgoing
- Fix crash when using sidebar branch 'Push to > origin'
- Double-clicking folders in the tree view now opens in Finder, as in 1.8
- Support double-clicking files & folders in the tree view when viewing a commit
- Sanitise git remote names more strictly than just spaces, don't allow other characters like : ^ etc (SRCTREE-2518)
- Disallow creating duplicate remote names
- Updated to latest translations from Transifex
- Fix some GitHub API error messages not being displayed in full in the hosted repositories login error dialog
- Better preservation of tree view expanded state when staging/unstaging (SRCTREE-2485)
SourceTree 1.9.5b8 - bugfix release
- Fix garbled characters in log when a commit has been made with Cyrillic 866 encoded characters (probably on Windows) in the message or author, which previously broke decoding hard and caused a backup non-UTF decoder to be used which garbled all other commit lines in that batch. Now we manually sanitise that broken commit so other rows can be decoded as valid UTF
- Also deal with another case of bad encoding which could cause single commits to be omitted from the log
- Fix endless spinner when using the staged/unstaged checkbox when there are no files to stage/unstage
- Make sure log refreshes immediately after creating a tag
- In the rare case that a TTY could not be created, avoid hanging & report properly in the log. Should never occur really but there is a possible resource starvation case.
- Small optimisation to early-out a couple of loops where possible
SourceTree 1.9.5b7 - bugfix release
- Support git 2.0's new default push.branch mode of 'simple' rather than 'matching'. SourceTree will detect what version of git you're running and will reflect
the default for that version if you haven't explicitly chosen a mode.
- SourceTree will no longer auto-refresh when changes are detected inside ignored directories. For this to work the directory itself needs to be ignored rather than the file that changed, since the Mac FSEvents notifier only includes directory information. Both the global ignore and the root repository-specific .gitignore/.hgignore are used to filter auto-refresh events.
- Fix command output history panel
- Fix incorrect date format in command output history pane (SRCTREE-2501)
- Fix opening file log window from blame view; previously it would immediately close
- Fix visual merge window closing too quickly
- Fix news window auto-closing
- Fix bug where first repository cloned in setup wizard might not be bookmarked
SourceTree 1.9.5b6 - bugfix release
- Fix inability to close Preferences window if both the Full Name and Email Address fields are left blank (SRCTREE-2491)
- When defaulting the push destination in git with push.branch set to 'matching', prefer origin over other remotes (SRCTREE-2489)
- Fix sorting problems in log view, including sort by filename and tree view sorting
- Prevent very long branch names from overlapping the buttons in the Commit panel (SRCTREE-2496)
- Do not reset Hide Remote Branches option when simply selecting a local branch. (SRCTREE-2469)
- Don't reset the branch filter when the branch you clicked on is the branch already being filtered by.
- Fix using 'Current Branch' option in log view on a detached HEAD causing a git error (SRCTREE-2475)
- Fix the display of HEAD in the sidebar in more recent versions of git when on a detached HEAD
- When double-clicking to switch branch, don't reset the filter away from 'Current Branch' (SRCTREE-2461)
- Clicking 'Details' button on a failed clone URL detection now provides output in a scrollable sheet, not a window which might be too big (SRCTREE-2452)
SourceTree 1.9.5b5 - bugfix release
- Fix params to Custom Actions having their last characters chopped off when run
- Fix split view errors in log when restoring a small window, hopefully fixes intermittent splitview size issues
- Remove remnants of 32-bit compatibility in project (ARC is 64-bit only)
- Fix all XIB build warnings to ensure maximum compatibility
SourceTree 1.9.5b4 - bugfix release
- Fix crash after creating a patch
- Fix crashing when checking out a branch from Bitbucket URL API
- Added missing translations for GitInteractiveRebaseSheet
- Fix Fusion clone dialog (clone from BB link) mysteriously disappearing while you're using it.
- Fix a number of KVO deallocation errors which could crop up in the log and could theoretically cause random behaviour
- This patch release picked up a number of patterns which are likely to also fix hitherto undetected bugs elsewhere
SourceTree 1.9.5b3 - bugfix release
- Fix a possible endless spinner when waiting for some tasks, especially large logs
- Fix crash when refreshing file status tree view
- Fix stuck refresh in file list after using "Commit Selected" in git when usually using staging mode
SourceTree 1.9.5b2 - optimisation release
- Converted entire product to ARC memory management; SourceTree is no longer using Garbage Collection. This has resulted in reduced memory footprint and
a quicker reduction in memory usage when windows are closed. Removal of the GC scanner at runtime also results in a faster product overall.
- Fix random crash in NSFileHandle which would occur with variable frequency depending on the user
SourceTree 1.9.5b1 - minor release
- Fix for git credential helper not saving the password when core git credential helper isn't present. Reworked in such a way it doesn't cause constant user prompts to access keychain like previous fix did.
SourceTree 1.9.4 - minor release
- The commit details file list now supports all 3 view modes (single col, multi-col and tree) just like the file status view
- When the current selected file disappears from the file status list (staging/unstaging/deleting), select the file after or before it on next refresh, rather than reset to the first item (SRCTREE-2427). This is more intuitive when staging one file after another in longer lists.
- The diff view scrolling behaviour is now faster & smoother
- Fix staging by spacebar hanging on refresh sometimes, especially in large repos with many files
- File searching now works when in tree view mode (SRCTREE-2423)
- Allow a blank email to be used as a global user preference (SRCTREE-1904)
- Fix occasional blank file lists when switching between log & file status views when not fully initialised (SRCTREE-2425)
- Speed up the re-refresh when switching view modes if another refresh was in flight when you changed it
- Fix view option tip pop-up being able to be vertically compressed so not displaying full message on some setups
- Fix error reporting when a failure occurs during staging/unstaging (SRCTREE-2442)
- Fix disabling the analytics in the welcome wizard not correctly disabling the option in Preferences (SRCTREE-2447)
SourceTree 220.127.116.11 - hotfix release
- Fix crash when dragging item from tree view with fluid staging mode or no staging mode enabled (SRCTREE-2414)
- Make 'Sort by path' more intuitive; search by folder, then filename within rather than by full path
This means that items in higher folder levels get listed together, instead of with subfolders potentially in between
- Fix HTTPS authentication in git constantly prompting for access to the keychain even if Always Allow is clicked (SRCTREE-2422)
- Use multi-column view for commit file list by popular demand
SourceTree 1.9.3 - UX feedback update & bugfix release
- New file view options: Based on user feedback we've added additional options to customise the file status view, which are available from a new button in the scope bar:
- Flat list (single column) - display files as a flat list with the full path (previously the only option in 1.9)
- Flat list (multiple columns) - still a flat list but split the file name and path into separate columns (1.8 flat style)
- Tree view - display the files & containing folders as a tree
- New staging options:
- No staging - don't use staging
- Fluid staging - files are in one list with headers for staged / unstaged, previously the only option in 1.9
- Split view staging - staged/unstaged files are in 2 separate lists with a vertical split, and you can drag/drop between them
- Commit selected is back: if you're not using staging this just flips the right checkboxes for you, but if you're using git staging then you'll be temporarily switched to 'No staging' mode so you can commit checked files separate to your index, and then returned to your staging view afterwards.
- Allow blank email to be set in repo preferences if user requires it (SRCTREE-1904)
- Selection of lines in the diff pane is now preserved over refreshes, provided that part of the diff didn't change
- Fixed a case where refreshing of file list got 'stuck' intermittently
- Fixed authentication issues for people who didn't have an entry in their keychain for a given host
- Fix not refreshing log after the push element of a commit & push operation fails (SRCTREE-2346)
- Fix tab navigation when editing remotes (SRCTREE-2344)
- Ignore hg-checklink- files in auto-refresh
- Fix not being able to commit if global preference is set to push but repo has no remotes (SRCTREE-2335)
- Don't display "(null)/master" as push target in commit popup when no remotes exist.
- When switching from file status to log view uncommitted & back, make sure filter is synced as well as content so mismatch can't happen (SRCTREE-2351)
- Make sure draft commit message is saved if application / window is closed while commit panel is still expanded (SRCTREE-2356)
- Make sure uncommitted line is included in log when only change is a missing file (SRCTREE-2381)
- Fix internal exception when clearing the text in the git flow start dialog (SRCTREE-2375)
SourceTree 1.9.3b2 - UX refinement release
- See the beta 1 notes below for the headline items, this release fills in some gaps
- Tree View is now implemented in all modes
- Commit Selected re-introduced. When used will flip the right checkboxes and also change from staging modes to no staging (and back afterwards) allowing you
to commit a file outside of your currently staged items (frequently requested)
- Diff view selection is now preserved across refreshes
- Fix failure to refresh completely if another refresh came in while the other was in flight
- Fix not being able to use spacebar to toggle file checkboxes when you have Full Keyboard Navigation set to All Controls in System Preferences (SRCTREE-2403)
- When view mode changes, immediately propagate to other file views
SourceTree 1.9.3b1 - UX refinement release
SourceTree 1.9.2b0 - Bugfix release (same as public 1.9.2 but on beta update stream)
- Fix clone and web URLs for Bitbucket repositories from Hosted Repositories if they had spaces in the name
- Remember the last filter used in the file status & default to that
- Save sorting preferences on file status view
- Fix extremely long filenames pushing the diff pane too wide (SRCTREE-2303)
- Don't automatically flip to staging mode from commit selected mode when added/removed files are detected (SRCTREE-2310)
- Add tooltip to diff file header to provide more details especially about renamed files (SRCTREE-2311)
- Allow blank name or email to be specified in git repo settings if people really want (SRCTREE-2313)
- Fix 'Commit' button not being enabled when committing selected if default state was all unchecked and you checked boxes only in the log view before engaging commit mode (SRCTREE-2302)
- Fix not displaying more than 25 repositories for any one Stash project (SRCTREE-2308)
- Staging using the header checkbox now only stages the currently filtered files, instead of staging all files (SRCTREE-2321)
SourceTree 1.9.1b0 - Bugfix release (same as public 1.9.1 but on beta update stream)
- Restored the Shift-Cmd-L keyboard shortcut for Pull. The 'Show Sidebar' shortcut had accidentally replaced it, it's now Shift-Cmd-K
- Fixed Actions > Commit menu option
- Fixed scrollbar overlapping final line of diff hunks, especially a problem if you'd set scrollbars to 'Always show' (SRCTREE-2228)
- Fixed file list quick access menu pop-over sizing problems on non-Retina machines like iMacs (SRCTREE-2225)
- Truncate file names at start rather than middle, so file name is more likely to be unaffected on narrow views (SRCTREE-2232, SRCTREE-2240).
- Fix not being able to perform actions on moved/renamed files. (SRCTREE-2231)
- Automatically flip 'Use the staging area' on if you view a repository with staged changes to avoid confusion
- Auto-refresh the 'push to' label in the commit pane if open while user switched branches (SRCTREE-2250)
- The 'Push changes immediately' option in git commits now correctly picks up tracked branches on forks if the push mode is 'upstream' or derivatives (SRCTREE-2272)
- When adding previous commit messages, move duplicate messages to the top (SRCTREE-2275)
- Fix switching back to binary side-by-side diff after switching to Before view (SRCTREE-2283)
SourceTree 1.9.0 beta 18
- The progress spinner in the file list now displays during staging/unstaging as well as during the subsequent refresh of the list.
This is important because sometimes git can become really slow during a stage/unstage process (even for the same file which has been
staged/unstaged instantly before), and when that happens the view doesn't refresh until the staging is done and in the meantime the checkboxes
are 'ahead' of the intended state. Previously because the spinner didn't display while staging (only once staging was done and the file list started to refresh),
you couldn't tell that the only reason for the checkbox state looking inconsistent was this in-progress git command and that you just need to wait
a little longer for it to update. We're trying to figure out why this occasional random slowdown in git staging occurs.
SourceTree 1.9.0 beta 17
- Automatic switch to 'All Files' filter now happens when there are no more matches in the current file filter, not just when there are no files to list at all (boilerplate. THis makes searching for files much more useful without fiddling with the filter manually.
- Make sure that the line numbers in the diff never scroll, and pass any vertical scroll to the parent view
- Fix for occasional white line rendering artefacts between red/green background in diff when scrolling slowly
SourceTree 1.9.0 beta 16
- "Nothing to commit" boilerplate now has extra decoration
- Moved the diff settings button to the shared header area in both file status and commit views, doesn't repeat in every hunk any more
- When viewing a commit the file list is now above the commit details, to be closer to the sort/filter/diff settings header
- You can now click anywhere in the small commit area to expand it, not just the text box and the image
- Don't allow long file names to push diff file ellipsis off the screen, truncate the file name (middle) instead
- Hide file ellipsis button in diff view when none of the options are visible
- Hide the reverse option in the file diff header for stashes / shelves
- Don't allow right-click selection on file list to select unstaged / staged header items (usually disallowed on left-click)
- Fixed the revert/reset and stop tracking context menu items being enabled when there is no file selection
- Don't increment the push count in hg if Amend Commit was being used
SourceTree 1.9.0 beta 15
- Revised diff format - more obvious visual containment of files, hunk text scrolls separately from line numbers, general niceness.
- When opening a repo window, if there's nothing to display in the file status view AND there's at least one commit, default to showing the log
- Don't format stderr output messages in red when first output in progress window; change it to red only if the overall result comes back as an error.
This avoids people thinking there's an error when showing the full output in all cases.
- Tweak the login error in the wizard to make it clear what we're saying, and what the server responded with, and not look like duplication
This string is still awaiting translation on Transifex
- Disable the commit button when you shouldn't be able to use it
- When removing a bookmark, also close any windows open to that bookmark.
- Fix OK button on hosted repositories when used as a dialog rather than separate window
- Fix invalid archive error text
- SRCTREE-2198: Return the correct code from interactive rebase upon cancellation, which should be 1 instead of -1.
SourceTree 1.9.0 beta 14
- Wizard now has customised title bar; 38px high and custom traffic light window buttons
- New icon for previous commit messages from Joel added
- Customised the diff hunk box rendering so that the footer has the same style as the inner table, with separator line and white pane detail
- Moved the wizard repository progress spinner to the header area
- Allow the welcome wizard first page to be dragged using the logo as well as the background colour
- French and Japanese translations brought up to date in Transifex
- Added link to Transifex project to prefs
- Change wizard background to light grey instead of white
- Fix hyperlinks reverting to standard format after visiting them instead of keeping Atlassian colours
- Fix rendering bug in commit file list (line could corrupt the contents when scrolling)
- Fix error output from git commit hooks now being visible in task output window
SourceTree 1.9.0 beta 13
- Setup wizard now has a new clone experience - a new page with a small progress bar.
- The commit pane is now resizeable and will remember its size for next time
- Commit pane now has a Previous Commit Messages button (clock) which can also be opened with Cmd-UpArrow
- Updated size & positioning of bar elements in file status view for aesthetics
- File names containing '->' now show their full file name instead of just the file extension.
- Staging last hunk in a file where the unidiff format omits the latter part (comma onwards) of the format will work in the line count after number.
- Fix clipping the bottom of the last line of diff hunks
SourceTree 1.9.0 beta 12
- Wizard updates:
- First page of wizard uses new bolder design
- Wizard now opens with a flashier zooming effect, because reasons
- URL colours are now standardised
- You no longer have to pick projects before you can list Stash repositories.
- Retrieving repositories from hosts now automatically lists all of your teams', organisations', or projects' repositories automatically, and
retrieves them in pages so that the list is built progressively over a period of time. This can take up to 3 minutes if you're an Atlassian
just because of the number of team repos but you can interact & clone as soon as the one you want appears. Use the filter to narrow the list if you need to
- To force the wizard to appear again, run "defaults delete com.torusknot.SourceTreeNotMAS agreedToEULA" in Terminal
- Hosted repositories interface now also automatically cascades to teams/organisations/projects and is smarter about retrieving owners when you're creating a new repo
- Default to not displaying confirmation dialog when switching branches if working copy is clean
- When hitting Cmd+B the focus will be in the search field now for immediate search.
- Double clicking stashes/shelves now behaves like other items in the sidebar and performs that action, i.e. to unshelve/unstash.
- Fix failure to auto-refresh sometimes when switching to file status view from log view
- Fix commit pane being wiped out by moving the sidebar after previously selecting the uncommitted line
- Don't allow sidebar to be dragged too wide so it doesn't allow room for other views
- Rebase interactive: Fix bug where continually undoing changes from the commit message popover would undo changes in the outline view.
- Git credential helper changed to reduce user prompts with usernameless HTTPS URLs.
- Added keyboard shortcuts for show/hide sidebar (Shift-Command-L) and command output (Shift-Command-W)
- Fix potential ambiguity when manipulating git tags
- Fix empty stash names causing a crash.
- Fix rare cases where the user couldn't unstage the last hunk, this was because the unidiff format allowed omitting a portion of the lines affected
- Diff optimisation: if no commit is selected then don't try to process it.
- Creating Subversion branches via git-svn just doesn't work any longer, and it's not recommended, so remove it.
- Change the language on revert/reset to say 'all your changes' rather than just 'changes'.
- Fix case where Open Selected Files didn't work in log view
- --set-upstream is now deprecated when branching so use newer format
SourceTree 1.9.0 beta 11
- Fix log view crash bug that seems to only occur on some machines.
SourceTree 1.9.0 beta 10
- Added lozenge (annotation) to Working Copy sidebar entry reflecting the number of files pending
- Change the style of the scope bar (as used in the log view) to match our new style
- Don't render grid lines in file list after the last row in the table
- Change the way that we switch to staging mode in git - only do it for explicit stage transitions instead of automatically when staged changes detected.
This is to fix inconsistencies when adding and removing files, especially when using Add/Remove. Now, the default setting for NEW users of SourceTree is not
to use staging, but for anyone who has already used SourceTree the default is to use staging.
The one edge case is when users new to SourceTree but not to Git bring in an existing repo with staged changes, which won't display staging by default.
- Log commit file list style now matches the file status view
- Log scope bar: drop separators and always use popups, never expand to separate buttons
- Reposition menu for scope bar popups to lower Y edge instead of to the right X edge
- Revised diff format, now closer to Bitbucket style with our own preferences.
- Small refinements to the search file views to make them look more like the new file status view without doing all the work to rebuild them. We may rebuild Search
later or may fold it into the Log view dynamically instead.
- New DMG icon and background for new installers.
- Fix file status view compression when resizing window too small
SourceTree 1.9.0 beta 9
- Add extra keyboard shortcuts to commit pane to toggle the push immediately checkbox (⇧⌘P) and to open the commit options (⇧⌘O) so you can drive everything from the keyboard
- Add back the ability to stage/unstage/discard/reverse at a file level from the diff (ellipsis button)
- Add Ignore action to file status popover
- Show in Finder toolbar button is now shown by default (this will reset any user toolbar customisations at the next version)
- Author popover now has an OK button so it's more obvious. You can also confirm by pressing Enter in the email box
- Don't allow checkboxes to be toggled with Space or via header checkboxes if they are disabled (e.g. clean)
- If custom author details are left blank, automatically reset to default author
SourceTree 1.9.0 beta 8
- Binary diff previews now supported, including a new side-by-side view
- Add an option to toggle on/off the staging display in the context menu for easier access
- Fix double thick border at bottom of the commit pane
- Centre file status names instead of baselining to checkbox
- Improve the alignment of the checkboxes and the filter box in the file status view
- Drop some of the padding from the file popovers
- Make popover for file menu instant rather than animating for UX. Keep animation for other uses.
- Fix stash / shelve view - was not displaying anything with new diff panel before
- Tweak diff table so it is full width but is further off the bottom to avoid clipping the rounded edges
- Ensure the diff view can't have old content left in it when you search from a blank slate
- Fix jump bar misplacement in log view
SourceTree 1.9.0 beta 7
- Amend last commit option now pulls in the previous commit message, author details and signoff options
- Revert/reset sheet and Create Patch sheet now uses the new style file status view
- When you need to cascade into a submodule/subrepo to commit outstanding changes, the nested commit sheet now uses the new style commit panel, just wrapped in
a sheet and with a context title.
- Fix rendering bug in the file list (horizontal grey lines) when you scrolled large lists in non-staging mode.
- Deleted and added files now auto-check in non-staging view when they transition from missing/ignored, e.g. via Add/Remove.
Previously they preserved their checked state from the previous refresh like other files, but this didn't make sense when using Add/Remove
SourceTree 1.9.0 beta 6
- When the file list is blank and you search, automatically flip to 'All Files', and back again when search is cleared
- Allow files to be dragged from new file status view into other applications
- Remove the top-level checkbox when staging/unstaging mode is enabled and move the filter via its constraint
- Add a border to the file status filter/sort drop-down because it looks weird floating without one given that the inline version needs extra space for when hovered
- Add border line to the top and bottom of the file status / commit sections.
- You can now squash commits upon adding a subtree.
- Fix missing Add subtree sidebar menu item in Japanese translation
- Check all files by default in the uncommitted line of the log too when not staging
- When switching between file status & log view, make sure we sync up checked file state; otherwise if you unchecked boxes in non-staging view in the log then committed, you might commit what you didn't expect becuase previously the state was separate.
- Don't display Discard Hunk button on clean files
- Fix the 'drag to apply patch' feature accepting any file, including source files we're dragging out. Now only accepts .diff and .patch.
- Fix for rare crash at startup in analytics code
SourceTree 1.9.0 beta 5
- Re-enable the 'Format to Guidelines' menu option in commit pane
- When there is nothing to display in the file list, display blank boilerplate with 'Open in Finder'.
Note that we keep the commit area available so people can draft commit messages ahead of changing files if they want
- Tidy file list by only adding staged / unstated headers where there are files in that category
- Support double-clicking on files in new status view (open or stage/unstage depending on prefs)
- Add a min size on the left hand side of the file status split panel so we don't allow UI to be crushed
- On first staging something, display a pop-up tip to explain what it means.
For now the 'Learn more' link leads to a general git tutorial.
To reset so this is displayed again, use "defaults write com.torusknot.SourceTreeNotMAS showStagingTip 1"
- Make sure that 'Sign commit' option is only available when a GPG key is selected for this repo
- Fix bug removing files from popover
- Fix a missing binding for Show In Finder in non-staging view
SourceTree 1.9.0 beta 4
- New commit pane working. All previous top-level commit functionality is now directed here instead of the commit sheets. Majority of functionality is working, including author switching, commit options, pushing after commit, fixed/non-fixed fonts and column guides, avatar loading. If you invoke commit from a different view, you will be taken to the file status view then returned to where you came from afterwards.
- Upgraded file status ellipsis button to retina
- Added popover to file ellipsis button which now works
- Dropped the 'Draft Commit' button & menus, this is now implicit when you enter text in the commit pane, it's saved as a draft across even app restarts
- Dropped 'Commit Selected' from menus etc, no longer applicable with new commit interface
- Added analytics
- Fix selecting 4+ files at once moving the split view over to the right
- Fix git flipping back to staged mode when it shouldn't
- Default the checked status correctly for files in git when we're not using staging
- Make git file list refresh immediately when you change the 'always display staging' option
- Binary files diff
- Blank 'Browse in Finder' interface when no files to display
- Preserve scroll positions in diff on refresh
- Double-click behaviour
- Performance needs some work on large lists
SourceTree 1.9.0 beta 3
- Diff hunks now matches the width of the area they're given, while still internally scrolling if lines are too large
- All buttons now added to the diff hunk. More dynamic than the old version, you only see buttons for either hunks or lines
- Improved selection behaviour on the diff lines - you can now deselect the lines by clicking outside the diff (thus bringing back the hunk operation buttons instead of line operations), and when you select lines in one hunk, it deselects the lines in other hunks which feels better.
- Advanced hunk button now drops down a menu for context, whitespace options and external diff
- Re-introduced the file header in diff view - needed for multiple selections & binary previews. Note that binary diffs are not updated yet.
- Revise diff border colour to be a little lighter to match prototypes
- Visual tweaks - taller header and match curvature of button and border edge
- Fix excessive refreshing when viewing clean / all file filter
- Binary files diff
- Preserve scroll positions in diff on refresh
- Pop-up ellipsis menu
- Double-click behaviour
- Using the commit pane in the file status - Cmd-C still pops up the old sheet so you can still commit
- Performance needs some work on large lists
SourceTree 1.9.0 beta 2
- WIP file status updates - new implementation of the file status list (Cmd-1) based on Joel's prototype.
What doesn't work yet:
- Unless you have anything staged, default view is flat with checkboxes which will eventually be used to selectively commit
- Space bar toggles checkboxes (single or multi-selection)
- After staging something (so far only via right-click Add to index) list splits into two but it scrolls as one, with the headers 'sticking' to the view.
- When split, checking a box stages a file, unchecking it unstages it. Space works for this too, including multi-selection
- Once you've used staging, it will be your default view even if you unstage everything rather than checkbox-commit (felt weird otherwise). You can go back
to checkbox committing (provided you have nothing staged) by unchecking Preferences > Git > 'Use the staging area by default'
- The progress sheet doesn't appear for staging/unstaging (and some other atomic file ops) any more uniless something goes wrong, making things smoother
- Early version of the new diff view - this is not done yet by any means. Main changes are the colours and formatting, but also the scroll behaviour is changed a lot; now the whole diff only scrolls vertically, and if lines are too long each hunk scrolls horizontally if needed. This makes navigation better and was
necessary to support the button layouts we're intending to use (not done yet).
- Pop-up ellipsis menu
- Double-click behaviour
- Buttons on the diff pane but you can use right-click to get to most things still
- Multiple files on the diff pane don't have any headers to differentiate them
- Diff pane horizontal sizing is off and you can see an extra vertical line sometimes
- Using the commit pane in the file status - Cmd-C still pops up the old sheet so you can still commit
- Performance needs some work on large lists, I know what this is
SourceTree 1.9.0 beta 1
- New welcome wizard - streamlined as per design process. To test this you have to manually reset your environment
back to as if you are just installed, like this:
- Open SourceTree, then close all your open windows. Then exit SourceTree.
- In Terminal, run "defaults delete com.torusknot.SourceTreeNotMAS agreedToEULA"
- In Finder, navigate to ~/Library/Application Support/SourceTree and delete (or move aside) browser.plist and hostingservices.plist
- Start SourceTree - you should now get the new welcome wizard.
- On-demand commit user details prompting - because we no longer ask for the user's commmit details in the
wizard, these are prompted for when you first try to commit, if they're missing. To test this out (for git):
- Close SourceTree.
- In Terminal, run "defaults delete com.torusknot.SourceTreeNotMAS globalUserEmail" and "defaults delete com.torusknot.SourceTreeNotMAS globalUserFullName"
- In a text editor, open ~/.gitconfig and delete the whole [user] section
- Start SourceTree and try to commit in a git repo (which doesn't have repo-specific user details). You will be
prompted to supply your name & email and whether to use those details just for this repo or globally.
SourceTree 1.8.1 - Minor Release
- SRCTREE-2064: Log view's branch filter now works in Git
- SRCTREE-2066: File list in the log view can no longer be completely hidden
- SRCTREE-1930: Changed the window collection behaviour to default so it’ll take you to the space the bookmarks window is active on
- SRCTREE-1835: Now completely disable the GPG checkbox if no GPG keys are available
- SRCTREE-2038: Fixed a problem with file descriptors running out when SourceTree was longing for long periods of time
- SRCTREE-2030: Disable the substitution of double-dashes and quotes with special characters by default
- Updated SVN documentation to include troubleshooting in the event SVN URLs don't work
- SRCTREE-2029: Replaced the recursive option for submodules so it instead updates them all as authentication fails when using recursive flag on new authentication model
- SRCTREE-1833: Ensure the checkboxes are aligned on the Git commit sheet. Pretty sure they already were, but re-aligned to be certain.
- SRCTREE-1992: Crash bug in viewing a diff on a particular file format
- SRCTREE-1080: Correct Japanese translations for the subtree feature
- SRCTREE-1998: Saving of subtrees now work on newly cloned repositories
SourceTree 18.104.22.168 - Hotfix Release
SourceTree 22.214.171.124 - Hotfix Release
- Fixed an edge case which could cause SourceTree to crash on startup
- The analytics preference wasn't being remembered when being set in the SourceTree preferences
SourceTree 126.96.36.199 - Hotfix Release
- A bug on startup would cause an instant crash in some cases
SourceTree 1.8.0 - Major Release
- Subtree support now added!
- Updated embedded Git version
- Usage statistics recorded with user consent
- SRCTREE-1946: Further help for when using GPG in the event the user specifies the wrong path
- STSP-797: Rare crash caused by old Bitbucket accounts in hosted repositories with older internal state
- SRCTREE-1821: Fixed an issue when bookmarks are resized very small causing layout to display incorrectly
- SRCTREE-1802: The patch sheet now has borders around it to be more consistent with other screens
- SRCTREEWIN-1198: Respect the user’s init.templatedir configuration when creating / cloning repos
- SRCTREE-1928: Fixed a crash bug some users were experiencing
- SRCTREE-1434: You can no longer specify a message with lightweight tags
SourceTree 188.8.131.52 - Minor Release
- Fix font size in file status views, had accidentally been increased by 2pt in 1.7.4
SourceTree 1.7.4 - Minor Release
- Fix crashes on Mavericks which only some users experienced.
- Fix git commit errors of the form 'unable to create temp file' which some people encountered
- Fix clone from BB/Stash link trying hg instead of git if you actioned the dialog before the 'checking URL' spinner stopped
- Fix looking up the wrong gpg install instead of the user-specified one. For those users who had 'gpg' and 'gpg2' which weren't symlinked meant it wouldn't work if they had older installs of gpg.
- Force push checkbox now sticks to the bottom left of the push sheet.
- When committing a missing file in ‘selected files’ mode, should behave like the inverse of unknown files i.e. remove the file
SourceTree 1.7.3 - Minor Release
- Fixed a bug in Git Rebase Interactive sheet where checking the 'amend' checkbox then clicking 'edit' caused a UI bug blocking the application (SRCTREE-1828)
- Mercurial patching failed meaning users couldn't use custom Mercurial versions - we've now removed this method completely and replaced it with a more robust solution using extensions (SRCTREE-1599)
SourceTree 1.7.2 - Minor Release
- Added 'Create pull request' checkbox to commit dialog so you can proceed directly to creating a pull request after committing.
- Fix french translation for Create pull request on main menu
- Improved Japanese translations
SourceTree 1.7.1 - Minor Release
- Add a 'Changeset' option to the Mercurial pull dialog to replace the removed 'Revision' field (SRCTREE-1847)
- Fix an authentication bug that would cause the new Mercurial pull sheet to always display 'No changes' from a private repo with HTTPS (SRCTREE-1855)
- Fix search with File Changes option selected in git (SRCTREE-1856)
SourceTree 1.7.0 - Major Release
- Create pull requests via SourceTree!
- Major cloning improvements
- Sign commits and tags in Git and Mercurial
- Command output history introduced to discover what actions you recently carried out
- Incoming/outgoing full diff in Mercurial
- Bundling when pulling changes in Mercurial to reduce bandwidth usage by up to 100%
- Improved searching in hosted repositories
- New "fetch" indicator in the footer when a fetch is in progress
- Reorder custom actions by dragging and dropping to set the desired order (SRCTREE-763)
- Vastly improved Japanese translations
- Branch indicator lozenge on commit sheets is now right aligned and transparent
- Improved documentation, including a list of all shortcuts available in the application
- Three window restoration options are now available: do not open, always open, or use OS preference
- Keyboard shortcut Cmd+B will both open and close the bookmarks window and will bring it to your active desktop
- New repository option to disable recursive submodule operations
- Duplicate bookmarks are detected in add repository screen
- Drag and drop patches onto SourceTree and it will automatically open the apply patch sheet
- Force push supported as a checkbox if enabled from preferences
- The commit sheet now allows you to resize the commit message against the diff
- "Askpass" authentication hook now called "SourceTreeLogin" so it's easier to identify
- Mercurial commit sheet now shows author and allows you to modify the author at commit time (git already supported this)
- Cmd+F or Cmd+Shift+F for searching now works from various contexts in the application (Bookmarks, Log etc.)
- Personal repositories are now supported for Stash in hosted repositories
- "Show in Finder" icon now retina ready
- Log view now uses case insenstive ordering like Finder
- Can 'Format to Guidelines' (hard wrap) the commit text by command clicking the commit text
- A new warning appears if the user tries to delete a bookmark which has outstanding changes or untracked non-ignored files. (SRCTREE-1550)
- If you hit a branch in the sidebar and click "Push To... <branch name>" it will auto-open the advanced view and auto-select the branch you wish to push (SRCTREE-460)
- Added "Push revision X" to the context menu on the log view and "Push <branch>" menu items to Mercurial repositories only. (SRCTREE-460)
- Added Cmd+F shortcuts to bookmarks view to immediately take you to the search input box (SRCTREE-1610)
- Add support for "simple" option to git push.default in preferences
- Added tooltips to the push options in preferences which are more descriptive
- Localisations improved on the pull sheet (SRCTREE-1387)
- Fixed bug where the window pane split was wrong on startup
- File list can't be hidden against the diff view as you couldn't tell where it had gone. (SRCTREE-1700)
- Git Rebase Interactive fixes so core.editor settings don't override SourceTree's interaction with rebase editors.
- Fix window restoration bug causing windows not to be restored correctly
SourceTree 184.108.40.206 - Minor Release
- Fixes for crash bugs users were experiencing when trying to interactively rebase.
- When using the fetch extension you can no longer specify a branch on checkout as the extension doesn't allow this. (SRCTREE-1672)
- Fixed a bug where even when the 'Check default remotes for updates every...' option is disabled connections to remotes were still being made (SRCTREE-1684)
- Visual bug in the file status view headers which caused the table rows to seep through. Forced a background colour to render to stop the table from rendering behind the label.
- Sorting is now case insensitive just like Finder now (SRCTREE-1440)
- Some support for tabbing to move across columns in the column view (SRCTREE-373)
- Sync the remote branch after you've changed your tracking branch for a local one (SRCTREE-1695)
- Interactive rebase now works in submodules. Also fixed a bug with submodules not recognising they're in a rebase state due to Git 1.8+ changing the .git file format for paths to be relative instead of absolute. (SRCTREE-1698)
SourceTree 220.127.116.11 - Minor Release
- A warning in Git appears when creating a stash with the same name to say you're creating a stash with the same name and a warning appears in Mercurial to say that your shelve with the same name will be overwritten (SRCTREE-1666)
- New window restoration options to support 10.6+ (options are different if you're on 10.6). A drop-down is now available to either always re-open windows on startup or to use the OS preferences. (SRCTREE-1612)
- New SourceTree credential helper for Git now deals with all authentication from Git version 1.7.10+ (replaces Askpass).
- Fixed an issue where repositories in the symlink folder /private wouldn't work (SRCTREE-1669)
- If the branches required for hg/git flow didn't already exist when initialising a repository then it silently fails, but will still 'semi-initialise' (creates config, doesn't 'init' the repo for git flow). A warning is now shown if the required branches don't exist and the process will not continue (SRCTREE-1696)
- Bookmarks window will now open if no other windows are open on startup (SRCTREE-1717)
SourceTree 18.104.22.168 - Hotfix Release
- Fixed a bug when pulling from your remote tracking branch caused a message warning you that you're not pulling from your tracking branch. This occurred when pulling from the sidebar.
SourceTree 22.214.171.124 - Hotfix Release
- Crash bug when context-clicking files/folders in the column view of Mercurial.
- Stash repositories were reporting as being Mercurial repositories.
SourceTree 1.6.2 - Minor Release
- When pulling from a non-tracked branch to your local branch a warning will be shown to confirm this is the desired action.
- New Mercurial preference asks if you want to see the revision or the changeset in the log view.
- Added a new branch indicator on the Git commit sheet to tell you which branch you're currently on before committing to it.
- Using "Cmd+B" (View -> Bookmarks) will cause the window to be brought to your current desktop.
- When the user has a local branch named differently to the remote branch, but is still tracking it, and selects 'upstream' as the push default in Preferences, the branch should be automatically selected in the Push dialog
- Stopped allowing the git branch sheet from being resizable as the contents weren't docked in any way on either sheet.
- Created the full screen menu items and fixed the shortcuts so it's correctly set as Ctrl+Cmd+F
- Disable "Show in Finder" and other equivalents for files/folders that are no longer in the file system of a specific repository or if the repository folder has been removed and you use the bookmarks view to "Show in Finder".
- Mercurial repositories no longer ask to checkout a tag if there's no working copy changes.
- Added support for "--autosquash" in Git Rebase Interactive.
- The return key now closes the full console output sheet when a git/hg command has executed.
- Window restoration for the bookmarks view has been fixed to adhere to Apple guidelines.
- Disabled the re-open windows preference for anyone using 10.6 (Snow Leopard) or below.
- Option to keep or delete your branch on finishing a git flow feature now works in French and Japanese translations.
- Removed the SourceTree warning asking the user to upgrade their Mac OS X version if the minor OS version is 10.7.4.
- Now correctly sets the rebase prefs in the pull dialog upon pulling a tracked branch from a remote in the sidebar.
SourceTree 1.6.1 - Minor Release
- You can now undo/redo in Git rebase interactive. Also added a 'Date' column for the commit date, deleted commits are shown with a strikethrough and you can now restore deleted commits
- You can now force fetch tags in Git from the fetch dialog by using the "Fetch and store all tags locally" option
- A new preference allows users to enable/disable desktop notifications right from within SourceTree
- Spaces are now disallowed when entering a new feature name in the new feature dialog for git flow
- New preference to select all files of a commit in the log view rather than selecting the first file by default
- Fixed a git submodules bug where dots in the submodule name caused a major problem when deleting the submodule
- Fixed a bug where if you select a range of commits in the log view and then click on the first row of that range of commits it won't refresh the diff/log view.
- Naming convention in git/hg flow allowed spaces in feature names which would fail. Now we auto-replace with underscores instead.
- Stopped allowing a user to interactively rebase against an uncommitted line, this would cause an error
- Fixed the borders not showing on the footer of git repositories
SourceTree 126.96.36.199 - Hotfix Release
- Override the "core.editor" setting so default Git settings are overriden when using interactive rebase
- The new Mountain Lion window restoration process could happen out of expected order causing SourceTree to crash
- Users upgrading from App Store version (1.5.6) to 1.6.0 could have experienced some issues in the update process
SourceTree 1.6 - Major Release
- Git rebase interactive introduced allowing you to interactively rebase right from within SourceTree.
- Atlassian ID integration allows users to register SourceTree with Atlassian directly from within the application.
- "Log Selected" context menu option now allows you to select multiple files
- The menu option "File > New" now shows as "File > New / Clone" to make it clearer what you can do from the sheet for users who don't understand where to clone from.
- Borders in all views are now cleaner by reducing their width. Also introduced borders into views that had them missing.
- You can now have passwords that are up to 75 characters long instead of 50 characters for GitHub, Bitbucket, Kiln and Stash.
- The latest Araxis diff/merge tool now works with SourceTree
- Git remembers previously selected options in the merge/pull dialogs and sheets.
- The "commit merged changes immediately" checkbox is now remembered between pulls
- Notification support for new commits compatible with 10.6+ (Growl required for Mac OS 10.6/7)
- The push sheet in Mercurial now shows if you're pushing a new branch to a remote.
- New preferences option to change pull counts to reflect the currently checked out branch in Mercurial.
- Git-svn repositories now show the "Revision Number" in the commit metadata as a field
- Repositories in bookmarks now refresh if they were children of a folder that was previously collapsed once expanded again.
- External diff wasn't working correctly with "ignore whitespace" when selected lines were being staged.
- Two options for the merge tool were being set simultaneously in SourceTree preferences.
- Set a minimum size on the File Log window as you could reduce it to whatever you wanted. This caused a view bug if you reduced it to nothing and expanded it back out again.
- When closing the entire branches tree, upon a manual refresh it won't auto-expand the branches tree against your will
- Help pages now work when clicking the "?" buttons on dialogs that provide help