By Joel Unger on October 14, 2015
What I’m doing with my life
I’ve been with Atlassian for 4 years now — 2 years in San Francisco and 2 in Portland. I started out as Bitbucket’s first designer and have since traveled through SourceTree, HipChat, and now back to SourceTree. I love the intersection of design and code, so creating developer tools is exactly where I want to be. I’m a full stack developer, who has written code on just about every platform. I have no bias when it comes to Windows vs OSX.
Things I’m good at
- Rock climbing
- Browsing Reddit
- Designing in code
- Dungeons and dragons
Things I like
- Cyberpunk (I just re-read Snow Crash and am starting Anathem)
- All-day breakfast
- Nicolas Cage
- Making SVGs
I spend a lot of time thinking about
- The design of every day things and how to improve them
- How we define relevance and meaning
- Topology, fourier transformations, neural networks
- Scoping problems
On a typical Friday night I am
Trying to solve the Chiliad Mystery.
What I’m bringing to SourceTree
Well, I’m the dude who made the SourceTree logo, so there’s that! You can check out my previous work on Dribbble and CodePen to get an idea of my trajectory.
SourceTree is an amazing app, with a huge following. I’m honored to work on it again, and will do my best to respect the existing users, while growing it in the right direction for future Git audiences. This means some of the UI clutter will get simplified, but all of the power will still be there.
I understand developers like density and utility. I promise to not increase the whitespace just because I feel it “breathes better.” My personal goal is to make you feel like you’re living in the future when you use SourceTree. Great things are coming, hold on to your butts.
By Rahul Chhabria on October 7, 2015
Hello, SourceTree community!
My name is Rahul Chhabria, and I joined Atlassian this September to be the product manager of SourceTree. For as long as I can remember, I’ve been using one or more Atlassian products as part of my development workflow. I can’t tell you how excited I am to be joining Atlassian and supporting an amazing community of users.
Prior to joining Atlassian, I worked on a variety of projects ranging from space hardware and education technology to web apps for the California DMV. Most recently, I worked as the product manager for Apple’s database product, FileMaker. I led the product direction for their mobile application, FileMaker Go. Before working at Apple, I was the product manager for Originate, a boutique consulting firm that partnered with small businesses and brought their products to market. At Originate, my team built the first generation Active Learning Platform for Echo360. The platform included a robust content management system, scheduling tools, and an interactive digital classroom experience. Lastly, I co-founded Eduschedu, a cloud-based lesson planning tool for K-12 teachers. In my spare time, I advise and help grow early-stage companies in the Bay Area.
Where does SourceTree fit into my story? As you can see from my previous roles, I’ve always been a fan of building tools with the goal of improving their respective industries. Now I have the opportunity to directly improve the lives of every developer using Git and Mercurial. That is mind blowing! I am ready to take the leap.
SourceTree has given us a massive head start. It takes a complicated workflow and simplifies that workflow without any compromises. I never want to see SourceTree lose that. So, at Atlassian, we’re building a team to take SourceTree to the next level. I am stoked!
I’ve been a consultant for the past ten years and have been looking for a place to call my home. I’m thrilled to be at Atlassian and am looking forward to working with you all to make SourceTree the number one graphical Git and Mercurial client in the world. Onward and upward! Look out for more communications, frequent updates, and new features in this blog.
By Mike Minns on February 25, 2015
Over the last few months, there have been a steady number of articles, tweets, etc. concerned about Atlassian’s commitment to continued investment in SourceTree. The apparent silence from our end hasn’t helped either. An update is long overdue.
Many of you, who are followers of SourceTree, are used to seeing posts from Steve Streeting and Kieran Senior. So the most logical question is, who am I? My name is Michael Minns, and I joined the SourceTree team last October as a Team Lead.
I’ve been with Atlassian for a number of years. Prior to SourceTree, I spent my time working on cross-product Java libraries used in the integration of our products – JIRA, Stash, and Bamboo. One of the things I love about working at Atlassian is that we get to use the products we develop, every day. We get the same experience as our customers – an improvement for you means an improvement for us. It is most true in our developer tools team. So when the opportunity came to join the SourceTree team – it was a simple decision for me – not to mention the overlap with an abiding passion for .NET.
I’m excited to be working on a project that has such close contact with its customers. I love the passion you all show for SourceTree and your desire to see it improve continuously.
“ the number one graphical Git client in the world”
The statement above is SourceTree’s BHAG a.k.a. our moonshot. While we know we are still quite far from it, I wanted to mention it to highlight our strong belief in the future of SourceTree.
While SourceTree has been loved here always at Atlassian, it is fair to say that the phenomenal growth in the number of users over the last year or so has surprised us greatly. Steve Streeting and Kieran Senior have done an incredible job of keeping SourceTree moving forward with new features and supporting our growing base of users, which has rocketed past 650,000 MAUs (monthly active users) .
Maintaining the quality is not easy
Windows users of SourceTree are painfully aware of some of the quality and performance issues we’ve experienced since the 1.6 release and the introduction of the tree view back in October 2014. These are summarized in the (slightly notorious) issue – SRCTREEWIN-2093. We took our eyes off the ball and didn’t act quickly enough. he code base required major refactoring. We are currently working through the issues and while we still have a long way to go, the latest Windows release, v1.6.13, has turned a significant corner and put us back on the road to recovery.
We’re here for the long haul
It is true that Steve Streeting, SourceTree’s founding father, is no longer working directly on SourceTree. However, he is still here at Atlassian, to provide advice, opinion, guidance and that invaluable longer-term perspective to the team. Steve’s talent is a huge asset to Atlassian, and he is currently putting it to use by working on a super secret project that will be of great benefit to all Git and SourceTree users a bit further down the line.
In the meantime, SourceTree is receiving a lot of love from Atlassian. SourceTree is an integral part of . we will be able to keep moving forward – hiring new team members, adding features, improving integrations with other products and services, focusing more on the overall user experience and providing a stable and responsive application.
A huge thanks to the SourceTree community
Be assured, we’re here for the long haul. We’re just getting started with SourceTree.
By Kieran Senior on December 18, 2014
The maintainers of the Git and Mercurial open source projects have identified a vulnerability in the Git and Mercurial clients for Macintosh and Windows operating systems that could allow critical files to be overwritten with unwanted files, including executables.
SourceTree users should update their Git client with one of the published Git maintenance releases (220.127.116.11, 1.9.5, 2.0.5, 2.1.4 and 2.2.1) or Mercurial client with the latest release.
SourceTree for Mac 2.0.4 and SourceTree for Windows 1.6.12 have both been released to address this security vulnerability.
The Mac version includes embedded versions of Git and Mercurial which address the security vulnerability. If you are using system Git or Mercurial please ensure you update your local copies, alternatively you can switch to using embedded versions which are the latest releases of both Git and Mercurial.
EDIT (Mac): Because previously we only supported embedded version 2.2.2 this is a big leap forward for embedded Mercurial. As a result, having hgsubversion enabled will cause errors. To fix this go into your SourceTree preferences by either hitting ⌘, on the keyboard or via the “SourceTree” menu in your toolbar, then browsing to the Mercurial tab. At the bottom of this tab is the “Extensions” section. Ensure “hgsubversion” is unchecked and everything should work again as it should. We will be bringing back support for this extension in a future version of SourceTree.
The Windows version now defaults to download an updated version of Git and Mercurial. To update your embedded version go to the Git and/or Mercurial tabs in Tools > Options and click on “Update Embedded Git” or “Update Embedded Mercurial” respectively.
By Steve on September 25, 2014
Hey folks, we just made a major update for SourceTree for Mac available: version 2.0! The highlights of this release include a rework of the bookmarks window, and the addition of a bunch of new translations. We think you’ll really like it.
Bookmarks + Hosted Repositories = Repository Browser
In SourceTree for Mac version 1.x, you had two separate windows for your Bookmarks (local clones) and Hosted Repositories (your remote accounts on Bitbucket, Stash and GitHub). With 2.0, those windows are combined into a single streamlined window called the Repository Browser, with a ‘Local’ and ‘Remote’ switch:
If you don’t see the repository browser on load, you can show it with Cmd-B or “Window > Show Repository Browser” from the menu.
In addition to bringing the two interfaces together, the new window has lots of advantages:
- Cleaner, less cluttered display style. Press spacebar to quickly look at more detail of the selected repository
- Repository avatars: avatars assigned on Bitbucket will appear here, or any image files in the root named logo/icon
- When scrolling, the parent group of bookmarks ‘sticks’ to the top of the view for better context
- Creating new repositories is now simpler –
- You can now create a repository on a remote service (Bitbucket, GitHub) at the same time as creating a new local repository
- Easily publish a local repository to a remote service of your choice by right-clicking then ‘‘
- More optimised bookmark refreshing
You guys have responded brilliantly to our request for the community’s help translating SourceTree to more languages, and as a result SourceTree for Mac now comes in 10 languages:
- Chinese (Simplified)
- Portuguese (BR)
Not all of these translations are 100% complete, our criterion for including a new language is a 60% translation rate, on the basis that this is a good enough start and including it in SourceTree will then prompt others to help complete it. If you see gaps or inaccuracies in the translation, please help us fix it at our Transifex project, and if your language isn’t included yet, please help get it to at least that 60% mark.
SourceTree has a new, flat application icon:
This brings it in line with the style of other Atlassian tools like HipChat, and also prepares it to fit seamlessly with the style of the newest version of OS X, Yosemite. Note that because of OS X caching, you might not see the new icon straight after the auto-update, you’ll probably have to restart the app manually before it’s picked up.
The icons within the application for file status, branches, tags etc have all been updated to a ‘flatter’ style too.
We hope you like the new release!
By Kieran Senior on August 19, 2014
We’re excited to announce the release of SourceTree for Windows 1.6, a major step forwards in our recent work to SourceTree’s user interface. This release was the first to have public beta testing so we’d like to thank the community members who provided feedback for some of the improvements we made to 1.6 in the last week. This release includes loads of really great features we think you’ll love.
New Commit Experience
In the previous version of SourceTree the commit experience caused a new dialog to open, showing you the same information as you were seeing on the file status screen. We’ve now merged these two windows to bring you the new commit experience, an all-in-one window to manage your changes and get your files into source control faster than before.
View Configurations & Fluid Staging
Everyone likes a certain view configuration and now there’s a variety of options to suit your needs simply by using the new view configuration menu in the new scope bar.
Two new view configurations are a part of this release, the ‘flat list’ and ‘fluid staging’. To save on screen space the fluid staging mode will group staged and unstaged and display them all in one list, and the flat list will forego columns, displaying the entire path of the file.
What, still no tree view? This release included loads of really major changes to SourceTree for Windows, so to make sure the tree view is just right when we release it we’re happy to announce it’ll be a part of a minor release of 1.6 in the coming weeks and is actively being worked on right now.
Improved Diff View
The newly improved diff view is easier on the eye, less cluttered and provides the more commonly used functions along with horizontal scrolling for each hunk. We’ve moved the less common functions into a pop-out menu and made sure buttons become available based on your current selection.
We’ve completely remade the welcome wizard so you can go from install to first repo as fast as possible. In addition to this, the welcome wizard offers to install Git and Mercurial if SourceTree can’t find an existing installation.
And Loads More…
- Hot swap commit authors
- Sorting in file listings
- Quick-access menu to common functions for files
- Improved asynchronous hosted repository listings
- Smaller borders with bigger grab areas for easier user interface adjusting
- And more…
By Steve on August 12, 2014
Wouldn’t it be great if you could use SourceTree for Mac in your own language?
We’ve supported French and Japanese in SourceTree for Mac for some time, but until now we haven’t been able to expand to more languages efficiently. However, dropping support for OS X 10.6 recently has meant we could finally convert all our user interfaces to auto layout – only supported on OS X 10.7+ – which enables us to add support for many more languages. As many as we want in fact
Good News Everyone!
So, from today we’re adding significantly to the number of languages we intend to support in the next major version, and are asking the community to assist us in populating those translations ahead of the release. You can contribute your translations to the SourceTree for Mac Translation Project – signing up is easy and you can get started in no time.
We’ve added a bunch of languages already, and we may add more in future. Languages that reach a good level of completion (around 60%+) by the time the next major version is released will be included in that release. Right now Russian is the only one which has reached that threshold, so if you’d like your language supported please jump in and translate as much as you can.
Inside each language are a bunch of resources which correspond broadly to functional areas so you’ll probably recognise where they are if you’re a SourceTree user. However if something is ambiguous you can post a comment here or in Transifex to request a clarification.
Thanks in advance! Let’s see how many languages we can support in the next version of SourceTree for Mac!
By Steve on July 8, 2014
Today we’re releasing SourceTree for Mac 1.9.5; it’s a point release in name, but it has enough interesting things going on under the hood that we thought it deserved a blog post of its own. Let’s dig in!
Git 2.0: ‘simple’ is the new ‘matching’
Our friend Nicola wrote a great post recently about what changed in git 2.0 from a command line perspective. In SourceTree the main effect is around the default behaviour for pushing branches. Before git 2.0 the default was ‘matching’, which means that branches with the same name on the local and remote would be pushed – in SourceTree terms this means which branches are initially checked when you open the push dialog, although it also affects the which branch is chosen for the ‘push immediately’ option in the commit pane too.
From git 2.0 the default changes to ‘simple’, which means that the default is to push only your current local branch, and to push it to the remote branch that it is tracking, so long as they also have the same name. SourceTree respects this default if you’re running git 2.0+, which currently you’d only be doing if you’d told SourceTree to use the system installed git (our embedded git will be updated at a later date). You can also choose to explicitly set the push branch behaviour in Preferences > Git > Push Branches, regardless of what git version you’re running.
Better memory usage
SourceTree’s memory usage has been optimised considerably in this release. You should find SourceTree uses less memory under heavy use, and that it gives memory back to the rest of the system more quickly when you close repositories and other windows. And who doesn’t like more memory?
Auto-refreshing & ignored folders
SourceTree automatically refreshes when files change (unless you turn it off), which is a useful feature. However, previously if a file changed inside a folder which you’d told Git or Mercurial to ignore, it would still cause SourceTree to refresh. This is because SourceTree didn’t read your ignore files itself, it left the filtering of file statuses to Git and Mercurial, only providing functions to add items to the ignore lists.
From this update SourceTree reads & caches your ignore files itself, and uses them to make decisions about whether to automatically refresh. If SourceTree is notified of a change in the file system, it will check the cached ignore patterns and filter out changes that are contained within an ignored folder, thus avoiding triggering an auto-refresh for these events. This only works for changes within folders which are ignored in their entirety, not for individual files, because the file system event system in OS X only reports changes at a folder level. However, this feature is particularly useful for build folders and Xcode metadata folders such as username.xcuserdatad, which are frequently written to automatically but are usually ignored.
Many bugs fixed
This probably goes without saying, but we’ve squashed a number of bugs in this release, most notably a particularly nasty one which has been causing seemingly random crashes for a few people; the telltale sign of this one was a crash log featuring ‘NSConcreteFileHandle’. That one sucked, so we’re glad it’s gone now, along with a bunch of other bugs which you can read about in the Release Notes.
So 1.9.5 is a point release; you won’t see any big surface changes, but under the hood things just got a significant tune up, and that stuff is important too. We hope you like it!
By Kieran Senior on May 31, 2014
For another year running one of the SourceTree developers, Kieran Senior, will be at WWDC from June 1 to June 6. Just look out for the guy in the SourceTree t-shirt. Kieran will be at the conference throughout the week and would love to meet you, just come say hi!
Can you still resist this face?
On Tuesday morning outside the Moscone centre Kieran will be accompanied by product manager Justen Stepka where you’ll get the chance to ask us questions about Bitbucket and SourceTree. Just look out for a couple of guys outside the Moscone centre on Tuesday morning. On top of that we’ll also be handing out our new batch of SourceTree t-shirts for free!
Hope to see you there!
By Steve on May 30, 2014
It’s always difficult to make changes to an established product, and SourceTree for Mac 1.9 was no exception. Our goal with 1.9 was to make some of the core views more approachable to new users while retaining what brought more advanced users to SourceTree in the first place. We prototyped, user tested and dogfooded for some months and believed we’d got the balance right.
Things are never that simple though, right? The feedback we’ve received from the wider SourceTree community since indicated that although many people did like the new style and found it more approachable, a lot of existing users thought we simplified things too much, and removed some of the options they really liked in the file view and were core to their workflow.
We listened; today, we’re releasing an update to address the major points you raised.
More View Modes
You can now choose between 3 core view modes in the file list:
- Flat list (single column) – this was the only option previously in 1.9
- Flat list (multiple columns) – splits the flat list into separate columns for file name and path
- Tree view – clearly very popular and makes a comeback in this release
If you’re using a Git repository, you can also choose how you view staged changes:
- No staging – ignore the index and simply commit files that you check
- Fluid staging – staged and unstaged changes are in one list with headers between (previously the only option)
- Split view staging – the view is partitioned vertically into staged & unstaged panes which scroll independently. This also brings back drag & drop to stage/unstage.
The ‘Commit Selected’ option was removed in 1.9 because you can do this by checking the boxes (when not staging) to commit files, but it became clear that it was still a useful shortcut for people. So the feature is back; if you’re not using staging it simply flips the right checkboxes for you and opens the commit popup, if you are using staging then SourceTree temporarily switches to the ‘No staging’ view and checks the boxes so you can commit selected files, then flips back to the staging view afterwards (with the staged changes from before preserved if you didn’t check those files).
There are other changes too:
- Fixed a ‘stuck refresh’ case
- Line selection in diff views is now preserved over refreshes
- More details in the full release notes
Thanks for your feedback and understanding, we hope you enjoy the new release.